[解決済み】git revert <hash> not allowed due to a merge but no -m option was given.
質問
git で 'revert' コマンドを使用して、特定の 'hash' 番号に戻そうとしています。
以下のコマンドを使用しています。
git revert c14609d74eec3ccebafc73fa875ec58445471765
しかし、以下のように返されます。
のエラーが発生しました。コミット c14609d74eec3ccebafc73fa875ec58445471765 はマージですが、-m オプションは指定されていません。
致命的: リバートに失敗しました
新しいgitユーザーとして、何が起こっているのか&amp;これを解決するために何をしなければならないかを説明してください。
このあるコミットに戻したいのですが(
c14609d74eec3ccebafc73fa875ec58445471765
を実行したときに表示されます。
git log
.
解決方法は?
マージコミットをリバートしようとしているときに、git がどの親コミットにリバートすればいいのかわからなくなってしまった。そのため
-m
を使えば、どの親を選ぶかを選択することができます。マージコミットを見て、どの親に行きたいかをメモしておいてください。親情報は
git log
例えば、以下のようになります。
commit d02ee0f2179def10277f30c71c5d6f59ded3c595
マージ: dd3a24c 2462a52
と実行します。
git revert <hash> -m 1
ここで
1
は親番号1(dd3a24c)を示す。
を元に戻そうとしている場合 に変更します。 そのコミットを実行してください。
git reset --hard <hash>
との違いを理解する。
git revert
と
git reset
を参照して、どちらを使うか決めてください。
git revert
はより安全なオプションですが、実際にはあなたが望むことはできません。これは単に、あるコミット(のセット)の変更を戻すだけです。
git reset
は、履歴の中の特定のコミットに移動するようにし、履歴を書き換えます。
関連
-
[解決済み】マージ後のコミットでGitエラー - fatal: マージ中に部分コミットができない
-
[解決済み】git-mergeの-dry-runオプションはありますか?
-
[解決済み] [Solved] 作業ツリーのディレクトリ 'example.com' を作成できませんでした。パーミッションが拒否されました
-
[解決済み】gpgがデータの署名に失敗した fatal: failed to write commit object [Git 2.10.0].
-
[解決済み] git リモートリポジトリには、ローカルブランチにマージされていないコミットが含まれています。
-
[解決済み] Git が追跡したファイルを .gitignore に登録したまま「忘れる」ようにするにはどうしたらいいですか?
-
[解決済み] Git リポジトリで削除されたファイルを検索して復元する方法
-
[解決済み] git cherry-pickが「...38c74dはマージされましたが、-mオプションは指定されませんでした」と言う。
-
[解決済み】Gitのワークフローとrebaseとmergeの質問
-
[解決済み】Gitで元に戻されたマージをやり直す方法
最新
-
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マージができない
-
[解決済み] リモートの <ブランチ名> とマージするように設定されていますが、そのような参照は取得されませんでしたか?
-
[解決済み] ブラウンアウトの一環として、パスワード認証が一時的に無効になっています。代わりに個人用アクセストークンを使用してください[重複]。
-
[解決済み] .gitignore と "以下の追跡されていない作業ツリーファイルはチェックアウトによって上書きされるでしょう"
-
[解決済み] git ls-remote と git ls-remote origin の違い。
-
[解決済み] git commit signing failed: secret key not available.
-
[解決済み] リモートブランチにプッシュできない、ブランチに解決できない
-
[解決済み] エラーです。リベースを使用してプルできません。あなたはステージングされていない変更を持っています
-
[解決済み] Git作者不明
-
[解決済み] まだプッシュされていない Git マージを元に戻す