多个git源/远程仓库和切换分支

3

我有一个项目的多个分支,我需要从其中一个分支的起点开始创建一个新分支。但我不确定如何使用git进行操作。情况如下:

  • 源项目
  • 我fork了源项目创建了MINE分支
  • 你fork了源项目创建了YOURS分支
  • 我将MINE克隆到了本地机器上

现在你的YOURS分支有一个NEXT分支,我想在此基础上工作。如何在我的本地克隆中检出YOURS / NEXT?理想情况下,我将从此处创建分支并将更改推送到MINE,发出拉取请求,然后您将它们合并到YOURS。


好问题。我很惊讶这么难找到。git checkout --help文档中根本没有提到这个用例。我惊讶为什么更多的人没有"origin",也就是生产环境,如你的SOURCE。还有一个"mine"用于本地开发,可以测试远程环境、清理并进行压缩。 - kevinmm
2个回答

5

您需要:

  • 声明一个指向“YOURS”的远程引用
  • 声明一个本地分支,该分支将跟踪YOURS/NEXT

操作步骤如下:

git remote add YOURS /url/for/YOURS/repo
git fetch YOURS
git checkout -b next YOURS/NEXT

在这一点上,git fetch YOURS 是否与 git remote update 执行相同的操作? - edA-qa mort-ora-y

2
假设git存储库已经发布在某个可拉取的位置,您可以使用git remote add [name] [URL]添加远程存储库,然后您就能够使用git pull [name] [branch]从所添加的存储库拉取更改。
一个工作示例可能是这样的:
git remote add upstream git://github.com/git/git.git
git pull upstream maint

我希望检出分支,而不是从中拉取。也就是说,我不想将他们的任何更改合并到我的任何一个分支中,我希望创建一个完全镜像他们的新分支。 - edA-qa mort-ora-y

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接