git常见命令使用
克隆项目
$ git clone http://gitlab.xxx.xxx/xxx.git
查看分支
$ git checkout xxx
新建分支
$ git checkout -b feature/login
切换分支
$ git checkout master
切换到上一次操作的分支
$ git checkout -
建立追踪关系,在现有分支与指定的远程分支之间
$ git push --set-upstream origin feature/login
//[branch] [remote-branch]
显示有变更的文件
$ git status
撤销更改过的文件
单个文件的撤销修改
$ git checkout -- 文件名
撤销工作区中所有文件的修改
$ git checkout .
提交
$ git commit -am "提交内容"
推送
$ git push
拉取
$ git pull
显示当前分支的版本历史
$ git log
合并
$ git merge dev //将当前分支与dev分支合并,如果修改同一文件 会产生冲突
以某分支为基础,将另一分支上的修改增加到某分支上,并生成新的版本
$ git rebase master //以master分支为基础,结合当前分支的修改,形成新的分支
如果两个分支都修改了同一个文件,则会产生冲突,此时找到冲突文件,解决冲突
然后先添加修改后的文件,后继续合并
$ git add .
$ git rebase —continue
此时,会新生成一个分支 *(no branch,rebasing feature/xxx)
这时有两个方法将其合并到主分支上:
$ git checkout -b feature/newBranch;将此分支命名为newBranch
2:如果想将*(no branch)合并到主分支master,则首先执行
$ git log
记住第一行的id号,然后执行
$ git checkout master
此时出现的第一行信息中也会出现一个id号,与之前执行git log中第一行出现的id号是一致的,此时就已经切换到了主分支上来了,然后执行
$ git merge id将*(no branch)
分支合并到主分支;
如果主分支与*(no branch)软件内容有差异的文件比较多,则建议使用第一种方法,如果有差异的软件不多,则可以使用第二种方法。
删除分支
$ git branch -d dev
当主分支master代码改动,需要更新开发分支(dev)上的代码
$ git checkout master
$ git pull
$ git checkout dev
$ git merge master
$ git push -u origin dev