有人可以在GitHub上为我的项目做贡献吗?

120
我在GitHub上建立了一个代码库,可以将本地的代码推送到这个远程代码库。有人可以自由更改我的GitHub代码库吗?如果我向Linux内核推送了一些内容,那么我所做的更改会被添加到其中并对所有人公开吗?

14
如果您使用公共仓库,每个人都可以看到但是在将其设为合作者之前不能修改。 - Tala
3个回答

112

不,所有仓库对匿名用户都是只读的。默认情况下,只有仓库的所有者才有写入权限。如果您能够向自己的存储库推送代码,则是因为您正在使用受支持的身份验证方法(HTTPS,SSH等)。

如果您想授权其他人将代码推送到您的存储库中,则需要在项目设置中配置该访问权限。

要为没有推送权限的项目做出贡献,您可以向自己的副本推送代码,然后请求拉取请求。Linux不是一个好的例子,因为内核开发人员不使用GitHub拉取请求。


那么 GPG 是如何保护提交的呢?因为没有其他人可以向我们的仓库提交。 - Saurabh Oza

48
如果您还没有授予其他人写入权限,那么没有人可以直接向您的存储库推送。在 GitHub 中为公共存储库做出贡献的过程始于 fork 存储库,然后将更改推送到 forked 存储库,接着创建一个拉请求到原始存储库。之后,项目所有者需要审核并采取行动(合并/拒绝)所请求的代码更改。如需更多详细信息,请参阅以下有用文章:

https://akrabat.com/the-beginners-guide-to-contributing-to-a-github-project


46

不可以,但是如果仓库是公开的,其他人可以fork它,并在自己的分支上提交更改。

然后他们可以通过pull-request向你请求将他们的分支中的某些更改合并到你的仓库中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接