【问题标题】:Git repo's branches are unavailable after being forkedGit repo 的分支在被分叉后不可用
【发布时间】:2014-11-19 15:52:18
【问题描述】:

我有一个非常标准的 github 存储库,有两个分支,mastersome_branch

我的一个朋友想看看我做的一些东西,可能会改变它,所以他按照the instructions 分叉了它。当他在 github 上在线时,他可以看到 repo 的两个分支,但是当他尝试使用终端切换到分支时,它告诉他没有这样的分支。

我们都想在我的分支机构工作。我们该怎么办?

【问题讨论】:

  • “其他说明”没有提及添加遥控器;此外,当您 git-clone 存储库时,这会自动完成,如“说明”中所述。当你 git-clone 一个 repo 时,克隆的 repo 被设置,以便“origin”远程跟踪克隆的 repo。你应该准备好了。你的朋友克隆了你的 repo,可以简单地“git checkout some_branch”,git 应该会自动打开一个跟踪 origin/some_branch 的本地分支。
  • 糟糕,使用了错误的链接。谢谢@山姆。这就是我们的想法,但它不跟踪 origin/some_branch

标签: git github git-branch git-fork


【解决方案1】:

分叉意味着存储库将相对于原始存储库发散其状态。

您可能正在寻找的是克隆存储库。

克隆后,通过运行 git fetch 确保远程引用已更新。

如果您仍然无法checkoutpull 特定分支,我会检查您对 GitHub 存储库成员的权限设置。

【讨论】:

  • 所以通过分叉他失去了对分支的访问权限?但是当在线查看存储库(在 github.com)时,他的 fork 仍然有两个分支
  • 在 GitHub 上的 Forking 将为您的原始存储库创建一个单独的副本,供他提交工作。他提交到他的存储库副本(他的分支)不会影响您可能正在使用的原始存储库。他必须执行拉取请求以让您接受他认为您应该执行的特定分支合并。如果他只是克隆了您的原始存储库而不是分叉,那么在执行 fetch/pull/push 时,你们都将引用相同的远程存储库分支。
  • 我们甚至还没有让他提交到存储库 - 我创建了一个分支,他分叉了我的存储库,该分支在线显示在他的分叉存储库中,它没有显示在他的桌面上使用git branch
  • 如果您创建的分支出现在他在 GitHub 的分叉存储库中,我认为他应该能够git fetch 并看到它。
猜你喜欢
  • 2014-11-02
  • 2012-11-07
  • 2015-04-15
  • 1970-01-01
  • 2020-04-06
  • 1970-01-01
  • 2020-09-19
  • 2013-12-04
相关资源
最近更新 更多