如何使用git查看另一个开发人员的分支?


How to look at another developer's branch using git?

我有一个项目,我是唯一的开发人员。然后一个新的开发人员加入了这个项目并创建了他的开发人员分支。

我想创建一个单独的地方并下载他的分支,这样我就可以从那个新地方运行他的代码,以避免任何冲突。

我在本地计算机上创建了一个新目录。我想做这个命令:

1
git checkout -b branch-name origin/branch_name

但我知道这有点不对,因为我想我需要检查一下新的主干和分支吗?我对做这件事的正确做法感到困惑。有人能给我解释一下这通常是怎么做到的吗?

谢谢您!


您不需要第二个位置,如果它是其他开发人员推送其分支到的同一个存储库,那么您可以从该远程获取,然后通过git checkout 将工作目录更改为其代码。

当你试着检查时,最好有一个干净的git status

过程将是:

1
2
git fetch remotename
git checkout branchname

如果名称匹配,git将自动设置为跟踪其他开发人员推送的分支。


如果你是清白的,你可以简单地将另一个开发人员的远程分支拉下来,而不产生任何冲突。

我的意思是,你没有未被删除的文件。如果你正在工作,要么提交你的文件,要么把它们藏起来。如果你选择把它们藏起来,你可以在切换回你的分支之后把它们解开。

通过执行git status检查您是否准备好拉动远程分支。

如何拉动远程分支?

这已经讨论过很多次了。首先,找到要拉的远程分支。

1
2
3
git fetch // updates local index
git branch -a // lists branches
git checkout --track origin/daves_branch

git获取远程分支


当你说"创建了他的开发分支"时,他只是在本地完成的。它可能在跟踪一个世界可以看到的远程存储库,但是除非他明确地推动它,否则您将无法看到他的分支。

如果他和你有相似的条件,你可以让他把他的分支推到远程:

1
git push origin <co-worker's branch>

比如说,你的同事分公司的名字是new_branch

现在,您将能够看到源站上具有相同名称的新分支。因此,origin/new_branch现在是一个有效的远程分支。您可以通过执行git branch -r来确认,该操作将显示所有远程分支,并查看origin/new_branch是否已列出。

现在您可以创建一个新的分支来跟踪这个远程分支。但请记住,你也会在当地做这件事。

1
git checkout -b my_branch origin/new_branch

所以现在你有了一个跟踪origin/new_branch的本地分支,它包含了你的同事推到原点时在本地的所有内容。