Git - 分支基础知识

时间:2014-02-19 19:17:11

标签: branch git-branch

假设存在一个MASTER存储库,它已经为它创建了2个不同的分支(分支A和分支B)。我已经克隆了master并且在我的机器上有本地版本。如果我拉分支A,结账到分支B,然后用分支B再做一次拉,那么分支A和分支B的代码是否“合并”在一起?因为我已经把它们都拉了一次,在任何一个时间点,我正在一个特定的分支上工作,我是否正在处理两个分支组合的代码?我不这么认为。我认为我正在处理的每个分支都有自己的特定实例,并且独立于其他分支是否正确?

2 个答案:

答案 0 :(得分:0)

如果在包含两个分支A和B的存储库中执行以下序列,则A和B应该是独立的

git checkout A
git pull MASTER A
git checkout B
git pull MASTER B

但是,如果你做这样的事情,你最终会把A合并到B

git checkout B
git pull MASTER A

我认为这可能会对分支是什么以及如何进行各种工作流程提供一些启示,以及一般使用Git的许多提示/技巧。

http://git-scm.com/book/en/Git-Branching-What-a-Branch-Is

答案 1 :(得分:0)

作为使用分支时的最佳实践,我总是将目标分支设置为拉动。

git checkout branchB
git pull origin branchB

如果你喜欢从branchA拉出来并与之合并,你可以

 git checkout branchB
 git pull origin branchA

取决于你想做什么。但盲目地从服务器拉出并合并另一个分支并不是最好的事情。在这种情况下,您想要查看branchA必须提供的内容,然后使用git merge或rebase进行合并。