我刚刚开始使用GIT并认为它很精彩,但我对merge
命令的作用有点困惑。
让我们说我们在分支“A”中有一个工作项目。
我回家对这个分支进行更改并将其保存为“B”。另一个程序员对“A”进行更改并将其保存为“C”。
有没有办法将两个分支“B”和“C”合并在一起,然后将更改作为新分支提交,说“D”?
或者我错过了“合并”的观点?
merge
用于将两个(或更多)分支组合在一起。
一个小例子:
# on branch A:
# create new branch B
$ git checkout -b B
# hack hack
$ git commit -am "commit on branch B"
# create new branch C from A
$ git checkout -b C A
# hack hack
$ git commit -am "commit on branch C"
# go back to branch A
$ git checkout A
# hack hack
$ git commit -am "commit on branch A"
所以现在有三个不同的分支(即A B和C)
将B和C的更改返回到A,结帐A(已在此示例中完成),然后使用merge命令:
# create an octopus merge
$ git merge B C
你的历史会看起来像这样:
…-o-o-x-------A
|\ /|
| B---/ |
\ /
C---/
如果要跨存储库/计算机边界进行合并,请查看git pull
命令,例如:从具有分支A的pc(此示例将创建两个新提交):
# pull branch B
$ git pull ssh://host/… B
# pull branch C
$ git pull ssh://host/… C
如果您需要将Sub Branch中的更改合并到Main Branch
- 你应该在MainBranch
# git checkout MainBranch
- 然后运行merge命令
#git merge SubBranch