開発者として、Git の使用は不可欠です。 Git では、ファイルの変更をキャンセルしたり、コミットを取り消したりする必要がある状況によく遭遇します。ファイルを手動で変更するか、コマンド ラインを使用することでファイルの変更を元に戻すことができますが、Git には、このような状況に対処するための非常に便利な方法がいくつか用意されています。
この記事では、Gitを使ってファイルの変更をキャンセルする方法やコミットを元に戻す方法を詳しく紹介します。
ファイルを変更したが、まだ Git に追加していない場合領域にある場合、変更をキャンセルするのは非常に簡単です。次のコマンドを使用して、ファイルの変更を元に戻すことができます:
git checkout -- <file>
このコマンドは、ファイルを最後に送信された状態に復元します。たとえば、test.txt
という名前のファイルを編集していて、それに変更を加えた場合、次のコマンドを使用して変更をキャンセルできます。
git checkout -- test.txt
これにより test.txt
ファイルは最後に送信されたときの状態に復元されます。
ファイルを Git ステージング領域に追加した場合、変更をキャンセルするのは少し面倒です。次の 2 つのコマンドを使用する必要があります。
git reset HEADgit checkout -- <file>
最初のコマンドは Git ステージング領域からファイルを削除し、2 番目のコマンドはファイルを最後に送信された状態に復元します。たとえば、test.txt
ファイルを Git ステージング領域に追加して変更した場合、次のコマンドを使用して変更をキャンセルできます。
git reset HEAD test.txt git checkout -- test.txt
これら 2 つの順序コマンドは非常に重要です。最初に git checkout --test.txt
コマンドを使用すると、Git はステージング領域で加えた変更を無視して、ファイルを最後に送信された状態に復元します。
ファイルを Git に送信した場合は、git revert
コマンドを使用して変更を元に戻す必要があります。このコマンドは、前のコミットをキャンセルする新しいコミットを作成します。たとえば、master
ブランチで test.txt
という名前のファイルを送信して変更した場合、次のコマンドを使用して送信を取り消すことができます。
git revert HEAD
このコマンドにより、このコミットに関する元に戻す情報を入力できるエディターが開きます。直接送信する場合は、次のコマンドを使用できます。
git revert --no-edit HEAD
これにより、失効が直接送信されます。
送信したコードに問題があることに気づいたり、コードをバージョン管理に追加したくない場合があります。この場合、コミットを取り消す必要があります。
コードをローカルに送信したが、リモート ウェアハウスにプッシュしていない場合は、次のコマンドを使用して送信を取り消すことができます。
git reset HEAD~1
このコマンドは、最新の送信を取り消し、コードを最後の送信の状態に戻します。
コードをリモート ウェアハウスにプッシュした場合は、次のコマンドを使用して送信を取り消すことができます:
git revert <commit_id>
このうち <commit_id>
は取り消したいコミットの識別子です。このコマンドは、新しいコミットを作成し、その中で指定されたコミットをキャンセルします。
Git は、ファイルの変更をキャンセルし、コミットを取り消すための非常に便利な方法を提供します。この記事で説明するコマンドを使用すると、このような状況に簡単に対処できます。もちろん、これらのコマンドを使用するときは、誤操作を避けるために細心の注意を払う必要もあります。
以上がgitでファイルの変更をキャンセルするにはどうすればよいですか?提出をキャンセルするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。