分支管理(branch)
- main分支是主分支,HEAD指向的就是当前分支,main指向提交。
- 创建新的分支,Git新建一个指针,指向main相同的提交,再把HEAD指向新分支。
1.创捷并切换新分支
创建分支,然后切换到新分支:
git checkout -b 分支名 //创建+切换分支
git switch -c 分支名 //创建+切换分支
git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:
git branch 分支名 //创建分支
git checkout 分支名 // 切换分支
git switch 分支名 // 切换分支
2. 查看分支
git branch会列出所有分支,当前分支前面会标一个*号
git branch
3.合并分支
git merge命令用于合并指定分支到当前分支
git merge 分支名
4.删除分支
git branch -d 分支名
注意事项
标签:Git,常用,git,--,合并,指令,切换,分支 From: https://www.cnblogs.com/wansuns/p/17795780.html
- 因为创建、合并和删除分支非常快,所以Git鼓励你使用分支完成某个任务,合并后再删掉分支,这和直接在master分支上工作效果是一样的,但过程更安全。
- 切换分支使用
git checkout <branch>
,
而撤销修改则是git checkout -- <file>
- 最新版本的Git提供了新的
git switch
命令来切换分支,创建并切换到新的分支,可以使用git switch -c 分支名
,然后直接切换分支git switch 指定分支名
- Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容
- 带参数的
git log
也可以看到分支的合并情况git log --graph --pretty=oneline --abbrev-commit
,git log --graph
命令可以看到分支合并图。- 合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。
如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
合并分支,请使用--no-ff
参数,表示禁用Fast forward:git merge --no-ff -m "merge with no-ff
" 因为本次合并要创建一个新的commit,所以加上-m参数,把commit描述写进去- master分支应该是非常稳定的,也就是仅用来发布新版本,工作都在dev分支上,也就是说,dev分支是不稳定的,到某个时候,比如1.0版本发布时,再把dev分支合并到main上,在main分支发布1.0版本;
每个人都在dev分支上工作,每个人都有自己的分支,时不时地往dev分支上合并就可以了。