ホームページ  >  記事  >  開発ツール  >  git コミットを元に戻す方法

git コミットを元に戻す方法

PHPz
PHPzオリジナル
2023-04-03 11:51:1133932ブラウズ

Git は人気のあるバージョン管理ツールですが、経験豊富な開発者でも誤って間違ったコードや個人情報をコミットしてしまう可能性があります。この場合、コードベースの履歴を破壊せずに問題を解決するには、コミットを元に戻すことが重要です。

以下は、git コミットを元に戻す方法の手順です。

1. 最新のコミットを元に戻す

間違ったコードや個人情報を送信し、このエラーをリモート ウェアハウスにプッシュしていない場合、最も簡単な方法は、この送信を元に戻すことです。

1. コミット履歴の表示

コミットを元に戻すには、まず次のコマンドを使用してコミット履歴を表示します:

git log

これにより、最近のコミットがすべて表示されます。

各コミットのハッシュに注意してください。これは後続の手順で役立ちます。

2. コミットを元に戻す

最新のコミットを元に戻すには、次のコマンドを実行できます:

git reset HEAD~1

これにより、最新のコミットがキャンセルされますが、コミットは保持されます。変更が加えられました。

上の図で、HEAD~1 は「最新の送信を取り消す」ことを意味します。

すべての変更を同時に元に戻すには、次のコマンドを使用できます:

git reset HEAD~1 –hard

これにより、最新のコミットが取り消され、すべての変更が元に戻ります。

2. リモート ウェアハウスにプッシュされたコミットを元に戻す

間違ったコミットをリモート ウェアハウスにプッシュした場合は、次のことを行う必要があります。送信を元に戻すには、次の手順を使用します。

1. リモート リポジトリにプッシュされたコミットを元に戻す

リモート リポジトリにプッシュされたコミットを元に戻すには、次のコマンドを使用します:

git revert <commit>

このコマンドは、指定されたコミット () を取り消し、変更が取り消されたことを示す新しいコミットを履歴に残す新しい A コミットを作成します。

このコマンドは変更を履歴の一部として記録するため、元に戻すことはできないことに注意してください。したがって、このコマンドは慎重に使用し、キャンセルするコミットを正確に指定してください。

上の図は、git revert コマンドを使用した結果を示しています。

2. 履歴を保持したままリモート リポジトリにプッシュされたコミットを元に戻す

コード ベースから元に戻す変更を完全に削除せず、履歴を保持したい場合変更を反映するには、次のコマンドを使用できます。

git revert -n <commit>

このコマンドは、変更がキャンセルされたことを示す新しいコミットを作成します。ただし、ファイルには変更が加えられないため、元に戻したいコミットを指定する前にファイルを変更できます。

git commit -c ORIG_HEAD

このコマンドは、元に戻されたすべての変更とその他すべての変更を含む新しいコミットを作成します。この新しいコミットは、保存したい履歴の一部です。

3. 提出情報の変更方法

提出情報が気に入らない場合、または提出した情報が不完全な場合は、変更するには、次のコマンドを使用します。 コミット メッセージ:

git commit --amend

このコマンドにより、コミット メッセージがエディターに表示され、変更できるようになります。

デフォルトでは、このコマンドは設定されたテキスト エディタを使用します。デフォルトのエディタを変更したい場合は、次のように環境変数を設定してください。

export EDITOR="nano"

上記のコマンドを実行すると、nanoエディタで投稿情報を変更できるようになります。

#投稿情報の編集が完了したら、保存してエディターを終了します。これにより、最新のコミット情報が更新されます。

結論

Git でのコミットの取り消しは、コード ベースの履歴を破壊することなくエラーを修正できる便利な方法です。 Git を使い始めたばかりの人でも、経験豊富な開発者でも、もうコミットを簡単に取り消す方法を知っているはずです。

以上がgit コミットを元に戻す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。