gpt4 book ai didi

git - 你如何 pull 别人在你的分支上所做的提交?

转载 作者:行者123 更新时间:2023-12-03 20:15:10 28 4
gpt4 key购买 nike

我在一个分支上做了一些工作:WIP-my-branch .我推了我的分支并进行了 PR(尚未获得批准 b/c 它正在进行中)。我被卡住了,然后寻求帮助;然后一位同事将提交提交到我的分支。我可以看到她在 Github 上的提交,但是在做 git pull在我的分支上没有得到她的提交(分支上的最新提交)。我怎样才能做到这一点?

最佳答案

我认为这有助于意识到分支是特定于一个特定的 Git 存储库的。你的同事没有在你的分支上提交。她在一个不同的分支上做了一个,可能有也可能没有相同的名字。

您正在使用两个存储库。一个是你的,在你的电脑上。第二个是 GitHub 上的那个。这两个不同的存储库有不同的分支。这些不同的分支可能具有相同的名称,并且一旦您获取(从它们获取提交)或推送(向它们发送提交),不同的分支也可以具有相同的提交:之后,您可以称它们为“相同的”,但它们在一个重要方面仍然不同:改变一个不会影响另一个(还)。

你的同事也(可能)使用至少两个存储库:她的和 GitHub 上的一个。您可能无法直接联系到她,但您应该可以联系到 GitHub 上的那个。 GitHub 上的那个甚至可能是 GitHub 上你已经使用的那个。

如果您的同事在 GitHub 上使用的存储库与您在 GitHub 上使用的存储库相同,那么您在自己的 Git 中已经有了该存储库的名称。你叫它origin .您可以运行 git fetch originorigin 获取提交.另一个 Git——GitHub 上的那个——里面有不同的分支名称。您的 Git 将获得他们的提交,然后将他们的分支重命名为 origin/whatever在您的存储库中,因此无论它们有什么名称,您的名称都是不同的——您的名称不以 origin/ 开头. (从技术上讲,您的 origin/* 名称是远程跟踪名称而不是分支名称,但这里重要的是它们以 origin/ 开头。)

如果您的同事在 GitHub 上使用不同的存储库,您将需要在自己的 Git 存储库中创建另一个远程:

git remote add <name> <url>
name part 是你想用的任何名字——我不知道你同事的名字;我将使用 alice在这里——还有 url部分是在 GitHub 上访问该 Git 所需的 URL:
git remote add alice <url>

现在你可以运行:
git fetch alice

这将带来该存储库中您没有的任何提交,并将这些分支重命名为 alice/master , alice/develop ,等等——基本上,你所有的新“远程跟踪” alice/*名字。

现在你将拥有她所做的 promise 。她在自己的存储库中制作了它,在那里它完全是私有(private)的,但随后她将其发送到了她的 GitHub 存储库,您可以在那里获取它。你得到了它,现在它在你自己的存储库中,所以现在你可以使用它了。如果 Alice 在一个名为 WIP-my-branch 的分支上成功了,然后将其发送到名为 WIP-my-branch 的分支下的她的 GitHub 存储库,您现在拥有它在您的 alice/WIP-my-branch 下.

关于git - 你如何 pull 别人在你的分支上所做的提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57187858/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com