10

さて、私は小さなStaciaブランチをマージすることになっていない大きなgithubプロジェクトを持っています。しかし、Heroku は MASTER をプッシュすることだけを真剣に考えているようです。ブランチをプッシュしたように見えますが、たとえばブランチしかない場合、サーバーにコードがないように動作します。.gems ファイルがブランチにあるため、宝石をインストールすることさえできません。

基本的に、マスターの存在を Heroku に知られたくありません。テスト用の Stacia ブランチを使用したいだけです。しかし、それは私のローカルブランチを無視し続けます。これを行う方法はありますか?繰り返しになりますが、Github のメイン リポジトリは何も上書きしたくありませんが (eeek!)、heroku に master と自分のブランチの両方があり、そこにマージされていれば問題ないでしょう。

私はまったくの git 初心者です (Windows でも同様です) ので、ご容赦ください。

4

2 に答える 2

58

別のブランチをHerokuにプッシュしたい場合は、次のようにすることができます

git push heroku yourbranch:master
于 2010-01-21T18:39:55.837 に答える
2

最初のステップは、マスターの上にローカル ブランチをリベースしたことを確認することです (リポジトリ 'mainGitHubRepo' にあるとしましょう)。

git fetch mainGitHubRepo master
git checkout -b mainGitHubMaster mainGitHubRepo/master

次に、ブランチに戻り、 mainGitHubMaster の上で再生します。

git checkout Stacia
git rebase mainGitHubMaster

georgebrockがコメントで言及しているように、中間のローカル ブランチを作成する必要はありませんmainGitHubMaster。フェッチ ブランチの上に直接リベースできます。

git checkout Stacia
git rebase maingithubrepo/master

その後、ブランチを GitHub forkにプッシュしてから、プル リクエストを作成できます。

ローカル ブランチを確立されたリモートにプッシュするには、次を使用するだけです
git push REMOTENAME BRANCHNAME
リモート ブランチで同じ名前を使用したくない場合は、次を使用できます
git push REMOTENAME LOCALBRANCHNAME:REMOTEBRANCHNAME

(これは、David Dollarが彼の答えで言及しているものですgit push heroku yourbranch:master:)

注: GitHub に独自のフォークがある場合は、このフォークの「マスター」で直接作業できます。つまり、プル リクエストは「マスター」ブランチから送られ、考慮される可能性が高くなります。
ただし、前述のプロセスは引き続き有効です。プル リクエストは、変更を統合する人にとって簡単なマージになる必要があるため、リベースの手順はローカルで行う必要があります。

于 2009-12-01T08:13:49.980 に答える