【问题标题】:pull changes from fork to original repository in Git将更改从 fork 拉到 Git 中的原始存储库
【发布时间】:2013-10-28 08:43:38
【问题描述】:

我正在努力学习 Git。我遇到了这样的问题... 我在 GitHub 中创建了一个存储库“资源计划”。我的同事对它进行了分叉并为其添加了新功能。现在,他无法将这些更改推送到原始存储库“资源计划”。有什么方法可以将这些新功能提取到原始存储库中?

任何帮助将不胜感激!

谢谢。

【问题讨论】:

  • 你的同事对你的仓库有管理员权限吗?

标签: git github git-pull git-fork


【解决方案1】:

假设您可以读取/访问其他人的存储库 - 是的,您可以。有几种方法可以做到这一点,例如:

添加一个遥控器,并从中提取/提取

为其他用户添加远程,合并更改,然后推送到您自己的存储库:

cd /my/repo
git checkout master
git remote add otheruser https://github.com/otheruser/repo.git
git fetch otheruser
git merge otheruser/branch

视为“手动”拉取请求

Github 有 a help page 演示如何做到这一点:

cd /my/repo
git checkout master
git pull https://github.com/otheruser/repo.git branchname
git push origin master

以上两者都做同样的事情 - 从一个不同的 存储库检索分支历史并将新提交添加到您自己的本地存储库(从那里 - 只需 git push 即可更新您自己的远程存储库)。

【讨论】:

    【解决方案2】:

    您应该将您的同事添加为协作者,并拥有推送到您的仓库的适当权限。

    您可以在此处找到有关它的文档:https://help.github.com/articles/what-are-the-different-access-permissions

    【讨论】:

    • he is not available to push those changes - 问题不是“我怎样才能让 做某事”,而是“我怎样才能自己做某事”
    【解决方案3】:

    除非您的同事对您的 git 存储库具有管理员权限,否则他们将无法直接推送到它。

    典型的 github 贡献周期是分叉存储库,为您的更改创建一个分支,将更改提交到分叉的存储库,然后创建拉取请求以让上游接受更改。

    如果您将您的同事作为管理员添加到存储库,则没有必要分叉,因为他们可以创建自己的分支并使用它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-27
      • 2011-04-23
      • 1970-01-01
      • 2012-12-15
      • 1970-01-01
      相关资源
      最近更新 更多