如何Git推送其他用户提交#

时间:2016-03-29 06:42:38

标签: git git-push

问题:在某个目录中,Git push仅限于极少数用户(User1)。其他用户(User2)无法在此处推送更改。

有没有办法让 - 在这个目录中User2提交更改(git add + Git commit),然后他向User1提供提交号,后者提供Git推送?

可以吗?

1 个答案:

答案 0 :(得分:2)

通常,User2执行更改并提交它们。然后,她将这些更改提供给推动上游更改的User1

可以通过各种机制提供更改:

您的要求并不少见:许多开源项目的工作原理如下:虽然每个人都可以贡献变更,但是某些(值得信赖的)人员可以将这些变更集成到实际的项目存储库中。

修改
我将提供一些有关如何在User2git format-patch使用

的示例
  1. 为您执行的最后3次提交创建补丁:

    git request-pull

    这将创建3个补丁文件,您可以通过电子邮件发送给允许在上游回购提交的人

  2. 为分支git format-patch -3 的所有提交创建补丁,因为您从master分支出来了:

    my-new-feature

    这将完成您在git format-patch master..my-new-feature 中执行的每次提交并从中创建补丁。再次,将这些补丁发送给维护者。

  3. 直接从硬盘发布对维护者的更改(Windows):

    • 与维护者分享您的工作目录(给她读取权限),比如my-new-feature。从现在开始,维护者可以读取共享文件夹的内容
    • 打开你的控制台,让神奇的事情发生:

      \\yourmachine\yourworkingcopy

      这会将现成的电子邮件文本发送到控制台,您可以将其发送给维护人员。