如何为其他人的存储库做贡献?

时间:2015-09-23 22:00:54

标签: git github

我的朋友在他的GitHub帐户中有一个存储库。我想直接向该分支上的主分支(唯一的分支)贡献(拉/推)。

我如何使用git直接在命令行上执行此操作?

5 个答案:

答案 0 :(得分:7)

由于您指定要将直接推送到朋友的回购,因此您的朋友需要在回购设置中将您添加为协作者。

但是,鉴于您对git缺乏经验,最好采用间接方法:fork repo并使用pull请求将更改移动到主repo中。

答案 1 :(得分:1)

正确的方法是 fork 他的存储库,完成您的工作,然后创建拉取请求。然后他可以复习并决定将其合并到他的作品中。这是一个很好的描述:https://guides.github.com/introduction/flow/index.html

编辑:添加了一个指向github的链接。

答案 2 :(得分:1)

  

使用falk上面的答案的Agreeds。检查您是否是合作者,或   他可以给你一个访问权限吗?如果不遵循以下步骤

去你的朋友回购并分发他的回购!!

在你的副本的分叉回购中,URL

enter image description here

在您的计算机上安装git。转到终端上的根目录,然后按照以下步骤进行操作

执行:

git clone URL

现在对您克隆的回购邮件进行任何编辑。假设您修改了一个文件readMe.txt。因为你在repo !!上修改了它!

git add readMe.txt 

现在你应该提交更改

git commit -m "Dude, I have modified readMe.txt"

现在推送:

您需要添加远程github存储库以将更改推送到分叉存储库

git remote add origin https://github.com/username/myproject.git

确认见:

git remote -v

现在确认之后,你可以推送代码:

git push

Git pull:

  

我假设你的朋友没有将你添加到列表中   贡献者。由于您已对某些文件进行了更改,现在您希望在您的朋友回购中看到这些更改。因此,请向您发送分叉回购的拉取请求   到他原来的回购!!

顺便说一下,这是我开始使用Git时使用的awesome tutorial

答案 3 :(得分:0)

以上答案缺少详细信息。

Github's docs直接回答此问题,并明确指出原始回购应作为另一个远程添加,以便可以推送PR,即

git remote add upstream <original_repo>

您现在可以将自己在Github上的fork推送为“原始”(或您标记的任何东西),但可以将原始回购邮件推送为“上游”(或任何与您的fork区别的标签)。 / p>

答案 4 :(得分:0)

我正在总结每个人的答案。

  1. Fork您朋友的存储库。
  2. 启动您的终端并输入git clone {URL}
  3. 使用此命令创建分支:git checkout -b new_branch
  4. 为上游存储库创建新的远程服务器,即原始存储库的链接与命令:git remote add upstream {URL}
  5. 在本地计算机上进行所需的任何更改。
  6. 再次启动终端,然后输入git add {file name}git add .(如果要添加所有文件)。
  7. 然后键入一条消息git commit -m "message"
  8. 创建分支:git remote add upstream {URL of friend's repository that you have forked}
  9. 要确认:git remote -v
  10. git push在这里,您必须提供用户名和密码。