用github forked存储库连接我的本地git存储库?

时间:2013-05-21 08:23:53

标签: git github pull-request

我创建了我的私人&使用git clone --bare $upstream的本地存储库 (详见How to create a git repository on my server from the github server?

当时,我认为我不会为原来的github回购做贡献。 (上游$)
我发现拉取请求只能从github存储库中获取。

所以我的问题是我如何为原始github回购做出贡献?

我想知道是否可以遵循以下策略:

  
      
  1. 我从$ upstream(原始的opensource github)创建了一个github fork   回购)
  2.   
  3. 以某种方式教我的本地仓库关于新github分叉(就像我做git remote add
  4.   
  5. 在我的本地克隆上创建一个分支(MyWork),工作,并推送到新的github fork
  6.   
  7. 将请求拉到原始repo auther。
  8.   

修改

由于私人仓库中有很多修改(提交),因此 我需要一种方法来进入当前$ upstream的干净状态(上游的主人没有我在本地修改的主人/主人,而不是MyWork)。

(因此我的拉取请求除了分支(拉取请求)之外没有我的修改)

我该怎么做?

1 个答案:

答案 0 :(得分:1)

花了我很长时间来搞清楚..
git中有一个cherry-pick命令,非常适合我的情况。

Send a pull request on GitHub for only latest commit

基本上,

git checkout -b MyWork_for_pull_request upstream/master (make branch off upstream/master not origin/master)
git cherry-pick `sha-of-MyWork-branch's-commit` (pick out commits I want to contribute)
git push mygithub_fork MyWork_for_pull_request

并在github页面中按pull request