每一种版本控制系统都以某种形式支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。
列出分支命令:git branch
创建分支命令:git branch (branchname)
切换分支命令:git checkout (branchname),当你切换分支的时候,Git 会用该分支的最后提交的快照替换你的工作目录的内容, 所以多个分支不需要多个目录。
合并分支命令:git merge,你可以多次合并到统一分支, 也可以选择在合并之后直接删除被并入的分支。
删除分支命令:git branch -d (branchname)
初始工作,先重新创建一个目录,作为测试目录,然后初始化仓库,并添加文件和提交:
当需要开发新功能,但又不影响主分支功能时,可创建Git分支,作为新开发目录。
列出所有分支:
此例意思是目前只有一个叫master的分支,并且该分支就是当前分支。
当在执行git init命令时,默认情况下Git会直接创建一个叫master的分支,也可以理解为是主分支。
创建分支并切换:
方式一:先使用 git branch (branchname) 命令创建分支,再用 git checkout (branchname) 命令切换到新创建的分支
方式二:使用 git checkout -b (branchname) 命令来创建新分支并立即切换到该分支下,从而在该分支中操作
当创建的分支比较多且杂乱时,可删除一些Git分支。
使用 git branch -d (branchname) 命令,把新创建的firstbranch和secondbranch删除,只留下master分支:
当某分支有了独立内容,但希望将它合并主分支,以保持主分支永远时是最新版本时。
使用 git merge 命令操作
场景一:当主分支和新创建的分支没有冲突时,可直接将分支合并
先创建一个gitbranch目录,然后git init初始化,并新增一个branch.txt文件,使用vim命令添加一些内容,再提交到master主分支。
然后新创建一个newgitbranch分支,并新增一个newbranch.txt文件,提交到该分支上。
再切换到master主分支,使用git merge命令把newgitbranch分支合并过来,并把分支删除掉。
场景二:当主分支和新创建的分支存在冲突时,需先把冲突解决掉,再将分支合并到主分支
沿用上面的master主分支
先重新创建一个名称为newgitmergebranch的分支,新增一个branch.txt文件,保证该文件在master主分支存在即可
然后把newgitmergebranch分支的branch.txt文件合并到master主分支的branch.txt中
如存在文件冲突,可使用 git diff 命令查看文件的差异性。
当项目进入到一个重要的阶段时,并希望永远记住那个特别的提交快照,你可以使用 git tag 给它打上标签。
打tag命令:git tag -a 版本号
例如:git tag -a v1.0
-a 选项意为"创建一个带注解的标签"。 不用 -a 选项也可以执行的,但它不会记录这标签是啥时候打的,谁打的,也不会让你添加个标签的注解。推荐带上该选项。
当在执行 git tag -a 命令时,Git 会打开你的编辑器,让你写一句标签注解,就像新增文件提交备注一样。
查看所有tag命令:git tag
指定标签信息命令:git tag -a
PGP签名标签命令:git tag -s
当忘了给某个提交打标签,又将它发布了,我们可以给它追加标签:
命令:git tag -a 版本号 版本的十六进制编码
例如:git tag -a v1.0 39090b5
当发布一个版本时,我们通常会先在版本库中打一个标签(tag),这样就唯一确定了打标签时刻的版本。将来无论什么时候,在获取某个标签的版本时,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本库的一个快照。
识别二维码关注个人微信公众号
本章完结,待续,欢迎转载!
本文说明:该文章属于原创,如需转载,请标明文章转载来源!