在我无法访问的存储库上推送更改或创建拉取请求

Pushing changes or creating pull request on a repo I lack access to

我搞砸了,想为我无法访问或不拥有的回购做出贡献,但我认为我所做的顺序错误。这是我所做的。

  1. 我在 GitHub 上访问了存储库并克隆了该项目。
  2. 我在 repo 上完成了所有工作。
  3. 我做出了承诺并尝试推送,但当然我得到了 remote: Permission to Codenator81/ng2do-mean-app.git denied to me.

所以我猜现在我需要 fork 原始项目?在我的本地项目中更改我的遥控器,然后将我的更改推送到我的分叉项目?我说得对吗?

一旦我对我的分叉项目进行了这些更改,我就可以向原始项目发出拉取请求。是吗?

或者这一切真的有必要吗?我想做的就是将我的更改贡献给原始仓库。

是的,如果没有推送访问权限,您唯一的选择就是分叉存储库。

无论您是从原始克隆然后分叉,还是分叉然后从您的分叉克隆,都没有关系。在任何一种情况下,您都必须将另一个回购添加为远程。例如:

git remote add upstream https://github.com/Codenator81/ng2do-mean-app.git

(我一般都是从fork上fork和clone,这样origin就指向我的fork了,我可以把upstream作为原来的repo加进去,当然你还是可以这样做其他方式并用 git remote rename.)

重命名遥控器

如果您的更改足够简单,那么 GitHub 确实允许您 edit files directly in the web interface。但是,这只是您正在执行的分叉和克隆过程的快捷方式(除非您不必将存储库克隆到您的计算机)。