$ git branch develop$ git checkout developgit
或者安全
$ git checkout -b develop
git checkout命令加上-b参数表示建立并切换。git branch或者(git branch -a)后面不跟分支名时指列出全部分支,当前分支前面加*。编辑器
$ git branch
git merge命令用于合并指定分支到当前分支,若是当前分支是master分支,git merge develop指将develop分支合并到master分支。ip
$ git merge develop
删除本地develop分支,不能在当前分支执行删除当前分支的操做。开发
$ git branch -d develop
冲突能够说是两个分支的冲突,产生的缘由是两个已经提交的分支的相同文件相同位置的的不一样操做进行了合并rem
多人协做开发的时候,若是出现了你没有改过的文件跟你冲突了,必定要去找到当事者,说清楚是如何冲突,而后协商解决,修文件,确保没问题后在从新add、commit、push。同步
通常代码编辑器都集成了git,如WebStrom、VsCode,能够很直观的查看冲突代码,并进行代码合并。工作流
$ git rebase -i [startpoint] [endpoint]
其中-i的意思是--interactive,即弹出交互式的界面让用户编辑完成合并操做,[startpoint] [endpoint]则指定了一个编辑区间,若是不指定[endpoint],则该区间的终点默认是当前分支HEAD所指向的commit(注:该区间指定的是一个前开后闭的区间)。若是不指定分支默认操做当前分支it
$ git rebase [startpoint] [endpoint] --onto [branchName]
优势io
缺点
git rebase --abort会回到rebase操做以前的状态,以前的提交的不会丢弃。
$ git rebase --abort
git rebase --skip则会将引发冲突的commits丢弃掉。
$ git rebase --skip
git rebase --continue用于修复冲突,提示开发者,一步一步地有没有解决冲突,fix conflicts and then run "git rebase --continue"。
$ git rebase --continue
本地仓库和远程仓库,Git自动把本地的master分支和远程的master分支对应起来了,而且,远程仓库的默认名称是origin。
查看远程库(git remote)
$ git remote
查看远程库详细信息
$ git remote -v
往远程仓库推送代码,须选择本地分支,下面指往develop分支推送代码
$ git remote origin develop
只有须要协同开发的才须要往远程仓库推送代码
建立标签 (git tag <tagname>)
$ git tag v1.0
查看标签(git tag)
$ git tag
默认标签是打在当前分支最新提交的commit上的,若是要打在历史的commit上,找到历史提交的commit id(git tag v0.9 <commit id>)
git tag v0.9 f52c633
查看标签信息(git show <tagname>)
$ git show v0.9
建立带有说明的标签,用-a指定标签名,-m指定说明文字
$ git tag -a v0.1 -m "version 0.1 released" 1094adb