【发布时间】:2015-07-30 07:56:12
【问题描述】:
我已经从项目经理的 master 分支上做了一个 fork。据我了解,现在经理的master分支是upstream/master,我刚才fork的那个是origin/master。我对origin/master 做了一些更改,其中一些更改只是添加了用于打印中间结果的 cmets 和代码,这符合我自己的理解。但也有一些变化是新编写的代码。我在一次提交中提交了所有更改。但我只想为新创建的代码向upstream/master 发送拉取请求。正如this Stack Overflow question 中所述,我没有一个简单的解决方案来实现我的目标。
现在我想在origin创建另一个叫Branch1的分支,这个分支应该和upstream一样,然后我只提交新写的代码到Branch1,然后发送一个pull request到upstream 来自这个Branch1。这种方法在当前的 github 系统中可行吗?如果是的话,你能告诉我这到底是怎么做的吗?
编辑
结合以下cmets,答案和我自己的搜索,我解决了这个问题。我所做的如下:
-
git checkout -b Branch1 upstream/master,这将获得upstream/master的相同副本,并将其作为一个名为Branch1的新分支 -
git checkout Branch1,并在文件config中,将Branch1的遥控器更改为origin -
git checkout master somefolder,此时master应该是origin/master。 -
git commit -m 'message' -
git push,somefolder将被推送到Branch1
【问题讨论】:
-
你是真的 fork 还是直接从他的存储库中克隆它?
-
@MadaraUchiha,是的,我确实从他的存储库中分叉,而不是克隆它。
-
你在使用 github 吗?
-
@ben,是的,我正在与 github.com 合作
-
好吧,你可以做
git checkout -b Branch1 upstream/master。
标签: git github pull-request