私のローカルリポジトリが現在、オリジンの背後にある1つのコミットであるとします。ローカルリポジトリで、元のリポジトリと競合しない変更をコミットするとします。最初に原点から変更をプル/マージせずに、この変更を原点にプッシュするにはどうすればよいですか?
質問する
74 次
3 に答える
3
わかりました。早送り以外のプッシュで拒否されました。リモートから最新の更新を取得したくない理由があります。変更を分岐する必要があることは明らかだと思います。
したがって、あなたのケースでは HEAD~1 の共通点 HEAD~n にブランチを作成しましょう:
git branch myfeat HEAD~1
次に早送りします。
git checkout myfeat
git merge master
新しいブランチには共通点があるので、次のようにします。
git push origin myfeat
リモートリポジトリは次のようになります。
--X---X--X--Xbug (master)
\
\--Xfeat (myfeat)
他の人があなたの機能をマージ/リベースできるようになりました。最終的には、バグを修正してローカルでプルするか、カスタム ローカル マスターを維持するため、わずかに異なるワークフローを考案する必要があります。
于 2012-05-20T04:30:54.787 に答える
0
あなたが説明したことはできませんが、あなたが望むのは次のとおりです。
git pull --rebase
git push
上記のコマンドは、ローカル リポジトリとリモート リポジトリを適切に (マージ コミットを作成せずに) マージし、ローカル コミットをリモートにプッシュします。
于 2012-05-17T09:35:21.333 に答える
0
彼が変更のバックアップを取得するためだけに、リモートにプッシュしたい可能性があります。
git push origin HEAD:refs/heads/some_branchname_not_in_use
私は通常trash/somebranchname
、これらのことを使用して、目的が明らかであるようにします。
于 2012-05-17T09:45:58.890 に答える