[教程指导]Git 简易教程

w3cvip发布于5 个月前 • 555 次阅读

Git 😄😄😄

  • git是先进的分布式版本控制系统

  • 命令行输入git,会提示安装命令

  • git clone

    • 克隆项目到本地,后面跟项目地址
  • git branch dev

    • 新开分支,dev是新分支名字
  • git checkout dev

    • 切换到分支dev
  • git checkout -b dev

    • 新建分支dev并切换到新分支
  • git push origin dev

    • 提交新分支到远程
  • git status

    • 查看项目状态
  • git add fileName

    • 将修改添加到仓库, fileName为需要添加的文件名,使用git add .表示所有修改都添加
  • git commit -m"description"

    • 将修改提交到仓库,description为本次提交的描述
  • git push

    • 将仓库的内容提交到远程
  • git pull

    • 拉取远程修改
  • git log

    • 查看git历史版本log,会显示commit的id,描述,提交时间,提交人(不能查看已删除的commit id)
  • git reflog
    • 查看所有操作记录,包括删除的commit id
  • git diff logId
    • 比较当前版本与历史版本区别, logId为 git log 命令查出来的log的id,不需要输入完整,只需要输入前几位就可以
  • git branch -d dev

    • 删除本地分支
  • git push origin :dev

    • 删除远程分支
  • git branch -p

    • 同步分支
  • git merge dev

    • 合并dev分支到当前分支(然后执行git status命令查看是否有冲突)
  • git reset --hard

    • 回退到某一个版本,后面加commit id,之后执行git push -f提交
  • git revert

    • 取消某一次的提交,后面加要取消的commit id

submodule

  • submodule是在一个git项目里面引用其他的git项目,引用的项目为子项目

  • git submodule add

    • 后面跟子项目地址,在git项目里面对应目录下执行,将子项目克隆到当前目录下,
  • git submodule update

  • 克隆一个含有子项目的项目:

    • git clone 项目 https 地址
    • git submodule init
    • git submodule update
  • 克隆项目(同时拉取submodule中的内容,效果和上面3个命令一样):git clone --recursive

参考文档

后续更新

-----------------------------------------------------2018-6-30 git stash--------------------------------------------------------------------

  • 当在一个分支上做了修改,但是准备提交时,打算换一个新的分支时:可以将现在修改过的东西暂存起来,然后切换新分支,再找回刚刚暂存起来的东西,操作步骤:

git stash git checkout -b <new branch> git stash apply


- 这时候新建的分支就有刚刚修改的内容了,然后再提交到远程


## 持续更新

git clone只能clone远程库的master分支,无法clone所有分支,解决办法如下:
- 新建目录,假设是codework
- cd codework
- git clone http://xxxxx.com/project.git ,这样在codework目录下得到一个project子目录
- cd project
- git branch -a,列出所有分支名称如下:

```bash
remotes/origin/dev
remotes/origin/release

  • git checkout -b dev origin/dev,作用是checkout远程的dev分支,在本地起名为dev分支,并切换到本地的dev分支
  • git checkout -b release origin/release,作用参见上一步解释
  • git checkout dev,切换回dev分支,并开始开发。
共收到 0 条回复