[解決済み】プルリクエストによるマージを元に戻す?
2022-04-10 20:53:14
質問
誰かが、受け入れてはいけないプルリクエストを受け入れてしまいました。今、私たちは壊れたコードの束をマージしています。プルリクエストを取り消すにはどうすればいいのでしょうか?マージする直前のコミットに変更を戻すつもりだったのですが、たくさんのコミットがマージされていることに気づきました。そのため、マージされる数日前のこの人のコミットがすべて残っています。これを元に戻すにはどうしたらいいのでしょうか?
解決方法は?
があります。 ベターアンサー この問題に対して、段階的に分解していけばいいのですが。
このように最新の上流の変更を取得してチェックアウトする必要があります、例えば。
git fetch upstream
git checkout upstream/master -b revert/john/foo_and_bar
コミットログを見ると、以下のようなことが書かれているはずです。
commit b76a5f1f5d3b323679e466a1a1d5f93c8828b269 Merge: 9271e6e a507888 Author: Tim Tom <[email protected]> Date: Mon Apr 29 06:12:38 2013 -0700 Merge pull request #123 from john/foo_and_bar Add foo and bar commit a507888e9fcc9e08b658c0b25414d1aeb1eef45e Author: John Doe <[email protected]> Date: Mon Apr 29 12:13:29 2013 +0000 Add bar commit 470ee0f407198057d5cb1d6427bb8371eab6157e Author: John Doe <[email protected]> Date: Mon Apr 29 10:29:10 2013 +0000 Add foo
ここで、後で元に戻すことができるように、プルリクエスト全体を元に戻したいと思います。 これを行うには、プルリクエストの ID を取得する必要があります。 マージコミット .
上記の例では マージコミット は、一番上にある プルリクエスト#123をマージしました..."。 .
両方の変更を元に戻すには、これを実行します ( バーを追加します。 と "foo"を追加します。 ) で、結局一回のコミットでプルリクエスト全体を元に戻すことになり、後で元に戻すことができ、変更の履歴をきれいに保つことができます。
git revert -m 1 b76a5f1f5d3b323679e466a1a1d5f93c8828b269
関連
-
[解決済み】git pullの取り消し、レポを古い状態に戻す方法
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] ファイルをリセットしたり、特定のリビジョンに戻したりするにはどうすればよいですか?
-
[解決済み] まだプッシュされていない Git マージを元に戻す
-
[解決済み] git rebase の取り消し
-
[解決済み] Gitブランチをmasterにマージする最も良い(そして最も安全な)方法は何ですか?
-
[解決済み] Gitで1つのファイルの作業コピーの変更を元に戻す?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】git revert <hash> not allowed due to a merge but no -m option was given.
-
[解決済み】ERROR: Error cloning remote repo 'origin'.
-
git revert 複数コミット
-
[解決済み] 短いGitバージョンのハッシュを取得する
-
[解決済み] Git pull - マージする前に移動または削除してください。
-
[解決済み] SourceTree error:1407742E:SSLルーチン:SSL23_GET_SERVER_HELLO:tlsv1警告プロトコルバージョン
-
[解決済み] git commit signing failed: secret key not available.
-
[解決済み] ssh-keygen' は内部コマンドまたは外部コマンドとして認識されません。
-
[解決済み] まだプッシュされていない Git マージを元に戻す
-
[解決済み] Gitを使って最後のXコミットをまとめる