现在已经和git合作了一段时间。 关于git pull请求有很多教程和解释。 它是什么动机等等。
我遇到两种情况:
1。分叉git repo
我查看了一些公共git存储库并决定我想贡献所以我:
通过分叉创建重复的存储库。例如分支机构。
进行更改并提交。
2。分支git repo
让我说我和我的团队成员正在研究这个git repo。 我正在开发一个名为“my-feature”的功能。所以我做了以下几点:
就像我说的那样,我理解上述示例中拉请求的工作方式。
我的问题:镜像
然而,我正在进行一项任务,其中明确要求我不要使用仓库而是反映它。
我按照以下链接提供的github帮助中列出的步骤进行操作:
https://help.github.com/articles/duplicating-a-repository/
基本上我做的是:
创建公共存储库的裸克隆:
git clone --bare https://github.com/exampleuser/old-repository.git
镜像推送到新存储库(在我的github帐户上)
cd old-repository.git
git push --mirror https://github.com/exampleuser/new-repository.git
我做了我的更改并将它们提交给我自己的镜像副本。 现在,如何在不升级的情况下为存储库的所有者创建拉取请求?
答案 0 :(得分:1)
正如您已经指出的那样,只有两种方法可以让您创建拉取请求:从fork或您拥有对原始存储库的贡献者访问权限。如果你没有,那么你在这里运气不好。
你唯一能做的就是创建一个问题并要求拉(这是一种非常手动的拉取请求)。
GitHub的命令行界面 hub 存在一个相关问题,要求找到submit a pull request without a fork的方法。那里的评论讨论了这是如何工作的,各位成员指出没有分支就不可能:
<强> j1z0 强> 如果您不推送权限,则必须使用fork,因为GitHub中的权限是每个repo而不是每个分支。
<强> mislav 强> 如果您具有对原始存储库的推送访问权限,则只能在没有分支的情况下打开请求。然后,您只需按下该仓库中的新分支并使用
hub pull-request
。在其他情况下,您必须使用
hub fork
创建一个分叉并推送到新的远程git push -u skywinder HEAD
并打开拉取请求hub pull-request
。