分支
分支导言
分支在日常生活中有许多的应用,分支封装开发阶段,解决bug等众多用途。分支与标签不同,标签是一个静态名字,通常不随时间的发展而变化,而分支是随开发而动态变化的。
命名:默认master,支持使用Unix路径命名,类似:bug/pr17等名字,但是不能使用特殊符号不能空白,不能包含两个连续的点等一系列奇怪的命名。
分支的使用:
分支允许版本库中的每一个分支的内容向许多不同的方向发散,当一个版本库至少分出一个分支时,把每次提交应用到某个分支,取决于哪个分支是活动的。默认是master分支
分支的创建:
git branch 分支名 starting-commit;没有指定starting-commit就默认当前分支的最近提交,即默认是在你现在工作的地方启动一个新分支
列出分支名:git branch
查看分支:
git show-branch;得到分号分开的两部分内容,第一部分列出分支名,感叹号和星号(标识当前分支)下部分是分支提交的矩阵。
下部分中:加号表示提交在一个分支中,减号表示合并,星号表示突出显示活动分支的提交。git show branch 会遍历所有显示的分支上的提交,在他们最近的共同提交处停止。
想查看更多,就输入更多参数
h
git分支检出(即head指针指向目标分支):git checkout 分支名;工作区会瞬间变成分支顶端的工作区,文件和文件目录会瞬间改变成目标工作区
如果有修改但是有已经修改但是未提交的文件,checkout会失败,要add、commit之后才会成功
已经修改的文件要提交到另外的分支使用:git checkout -m 分支名
分支的删除:
git branch -d 分支名,git不会让你删除不包含当前分支中提交的分支,要安全删除,先merge合并