?其他Git内容详尽请见:Git史上最详细教程(详细图解)_m0_48651355的博客-CSDN博客
啥子是git分支呢?
大家可以这么理解,如果你看过盗梦空间或者你是个漫威迷的话,应该听说过平行宇宙或者多层宇宙,就是当前宇宙不会影响到其他的平行宇宙,正如当我们创建了新的分支,在新分支里面不论做什么事都不会影响到主分支上的内容。只有当触发了什么时空乱流啊之类的就相当于主分支和次分支合并才会使主分支内容改变。
分支有什么作用?
当你准备开发一个新功能,但是需要花很长时间才能完成,第一次你写了一部分的代码,如果立刻提交,但是代码还没写完,不完整的代码会影响到和你一起工作的其他同事伙伴的工作。如果等代码全部写完再一次提交,又有着代码丢失或者突发事件等的影响。
分支在这时候的作用就体现出来了,我们创建一个自己的分支,别人是看不到的,我们就可以在原来的基础上继续自己正常的工作,想提交就提交,直到开发结束,再来一次性合并到主分支上,即不影响他人,也保证了代码的安全。
?创建与合并分支
- 创建分支命令
git branch 分支名 - 切换分支命令
git checkout 分支名 - ?合并分支命令
git merge 需要合并的分支名
? ? ? ? ? ?你可以多次合并到统一分支, 也可以选择在合并之后直接删除被并入的分支。?
git分支管理?
- 列出所有分支命令
git branch 没有参数时,git branch?会列出你在本地的分支 - 默认分支名
当我们执行 git init 时候,默认情况下GIt会创建一个master分支,如果我们要手动创建则需要git branch 分支名 即可 - 切换到新建分支
执行完上述命令后我们就得到了新的分支,但是我们并没有进入新分支,需要执行 git checkout 分支名?进行切换,此时我们才真正的进入新的分支中。 - 更新分支内的内容
如果我们在新分支中更改了其中的文件,只会影响当前的分支里的内容,当我们切换到master分支后,还是还原到之前的状态,可见改变当前分支里的内容只能影响当前的分支,并不会影响到其他分支上。 - 快速创建并切换到新分支
git checkout -b 分支名 - 删除分支
git branch -d 要删除的分支名 - 合并冲突
合并并不只是单纯的将文件添加删除的操作,Git也会整合修改文件里的内容。比如我们创建一个text分支 $git checkout -b test
Switched to a new branch 'test' 然后我们修改其中的内容,比如在主分支master里没有任何文件,现在在test文件中添加一个txt文件,,当我们现在切换回master中我们就会看到我们修改前的内容,我们再次修改添加一个相同名的txt文件(注意里面的内容得要不同),然后这个改变就会留在当前master分支当中,然后我们在master分支中开启终端或者git来执行 git merge test 把test分支和master分支合并,一个合并冲突就出现了,接下来我们需要手动修改它,得到我们想要的结果,然后就直接执行 git add .
git commit '合并了分支' 告诉Git文件冲突已经解决即可。
现在我们成功解决了合并的冲突,并提交了结果。?
以上就是我对分支的理解,如果有毛病希望小哥哥小姐姐评论我进行修改更正。
|