我刚刚开始使用GIT,我认为它很棒,但是我对merge
命令的作用感到有点困惑。
假设我们在分支"A“中有一个正在运行的项目。
我回到家,对这个分支进行了更改,并将其保存为"B“。另一个程序员对"A“进行更改,并将其保存为"C”。
有没有一种方法可以将两个分支"B“和"C”合并在一起,然后将更改提交为一个新分支,比如"D"?
或者我错过了“合并”的要点?
发布于 2010-08-04 17:58:05
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
命令,例如,在pc上使用分支A(此示例将创建两个新的提交):
# pull branch B
$ git pull ssh://host/… B
# pull branch C
$ git pull ssh://host/… C
https://stackoverflow.com/questions/3404294
复制相似问题