Fork 和 Pull 方法不适用于 GitHub

Fork and Pull Method Not Working on GitHub

我是 git 和 GitHub 的新手(我的用户名是 myuser)。我正在尝试提交我的第一个拉取请求并且 运行 遇到了一些问题。

  1. 我 fork 了一个我需要修补的项目的 repo,叫做 someuser/somerepo。因此,我现在有一个 myuser/somerepo 存储库。
  2. 我在本地克隆了我的分支并创建了一个 b运行ch (mybranch)。
  3. 我对 mybranch 进行了各种更改。
  4. 我运行git commit -a -m "Closes someuser/somerepo/#10"
  5. 然后我运行git push,在那里我被要求进行身份验证。

成功后git push,我看到:

所以,即兴发挥,到目前为止,我似乎实际上已经成功地完成了所有事情。所以我用谷歌搜索“GitHub 如何拉取请求”,我发现了这个 GitHub wiki article.

根据那篇文章,我需要进入 GitHub,从 "the repository from which I'd like to propose changes",我需要从 B[=86] 中选择 mybranch 选项=]ches 菜单。

但是,我没有看到 mybranch,我只看到存在于我分叉的回购中的 b运行ches。这告诉我我错过了什么。

所以我不得不问一下(因为它们都是相似的):

  1. 我错过了什么或忽略了什么吗?我不是 somerepo 仓库的 'member',我从未联系过它的任何维护者;我想我想知道我是不是连拉取请求的权限都没有。 在这种情况下,我的问题是:GitHub 回购授权模型如何工作?(哪些用户可以对回购做什么)?
  2. 是什么决定了一个“分叉和拉动”还是与"shared repo"一起使用?在这两种情况下都会出现拉取请求吗?

最终:我的下一步是什么,我该如何解决这个问题以便我可以继续提交我的拉取请求?

好像你还没有将你的分支推送到你的 fork 存储库,尝试这样做:

git push -u origin mybranch

这里我假设您的遥控器是 origin(默认情况下)。如果不是,请使用遥控器的名称而不是 origin

编辑:

我认为在某些情况下(非快进更改),当您不这样做时,您在本地分支中的更改将被推送到 "default" 远程分支(通常是 master) t 指定目标分支(即通过git push),当然这可能根本不是你的情况:)

如果您想确保您的更改在 mybranch 中,请尝试 url

https://github.com/[user-name]/[repo-name]/tree/mybranch

它应该会显示您上传的分支。

希望对您有所帮助!

你们超级亲密。你真的想去你的分叉,点击右边的 pull requests,然后点击 new 开始这个过程