heroku使用git branch令人困惑!

V_H*_*V_H 10 git version-control merge github heroku

好吧,所以我有一个很大的github项目,我不应该将我的小Stacia分支合并到.然而,似乎Heroku只是认真对待MASTER.看起来我推了我的分支,但是例如如果我只有我的分支,它甚至就像服务器上没有代码一样.我甚至无法安装我的宝石,因为.gems文件在我的分支上.

基本上我甚至不希望Heroku知道有一个大师.我只是想使用我的测试Stacia分支.但它一直无视我当地的分支机构.有没有办法做到这一点?而且,我不想覆盖主Github存储库(eeek!)上的任何内容,但如果我在heroku上同时拥有master和my branch并将它们合并在那里,那就没关系.

我是一个完全的git新手(在Windows上也不少)所以请耐心等待我.

Dav*_*lar 58

如果你想将一个不同的分支推送到Heroku,你可以做类似的事情

git push heroku yourbranch:master
Run Code Online (Sandbox Code Playgroud)


Von*_*onC 2

第一步是确保您已将本地分支变基到其主分支之上(假设它位于其存储库“mainGitHubRepo”中)

\n\n
git fetch mainGitHubRepo master\ngit checkout -b mainGitHubMaster mainGitHubRepo/master\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后返回您的分支并在 mainGitHubMaster 上重播它:

\n\n
git checkout Stacia\ngit rebase mainGitHubMaster\n
Run Code Online (Sandbox Code Playgroud)\n\n

正如geoorgebrock在评论中提到的,您不必创建中间本地分支mainGitHubMaster:您可以直接在 fetch 分支之上进行变基。

\n\n
git checkout Stacia\ngit rebase maingithubrepo/master\n
Run Code Online (Sandbox Code Playgroud)\n\n

之后,您可以将分支推送到 GitHub 分支,然后发出拉取请求

\n\n
\n

要将本地分支推送到已建立的远程分支,您只需使用:
\n git push REMOTENAME BRANCHNAME
\n 如果您不想\xe2\x80\x99 不想在远程分支上使用相同的名称,可以使用:
\n git push REMOTENAME LOCALBRANCHNAME:REMOTEBRANCHNAME

\n
\n\n

(这是David Dollar在他的回答中提到的:)git push heroku yourbranch:master

\n\n

注意:如果您在 GitHub 上有自己的分支,您可以直接在该分支的“master”上工作,这意味着您的拉取请求将来自“master”分支,从而增加您被考虑的机会。
\n但是上述过程仍然有效:您的拉取请求必须导致集成您的更改的人进行简单的合并,因此要在本地进行变基步骤。

\n