【发布时间】:2015-02-25 01:25:37
【问题描述】:
情况:有多个分支的开源项目,我的 fork 用于贡献。 我想在 github 上为拉取请求创建一个新分支。我想将此分支基于开源项目的现有分支之一,但我不希望我的提交进入该原始分支。
根据我的经验,如果我克隆我的 fork,执行 git checkout -b my-branch origin/some-branch 然后提交+推送到 my-branch,在 Github 中提交将转到 some-branch 而不是 my-branch。显然,如果我想在同一个分支上为多个拉取请求创建多个分支,这是有问题的。
我找到的解决方法如下:
git checkout -b some-branch origin/some-branch
git checkout -b my-branch(基于 some-branch 的新分支,但不跟踪它)
之后 - 提交+推送,第一次推送将在 Github 上创建 my-branch。
但是,这给我留下了一个额外的本地副本 some-branch。很明显,我可以稍后删除它,但是有没有办法完全避免创建它?有没有一种方法可以创建my-branch,基于origin/some-branch,但不跟踪它,在一个命令中,中间没有额外的分支?
【问题讨论】:
-
您可能想发布您的 push.default 设置以及您的 Git 版本。这两者都会影响您在推送时看到的行为。
标签: git github version-control git-branch