web-dev-qa-db-ja.com

このコミットを元に戻し、GitHub for Windowsでこのコミットをロールバックする意味は何ですか?

Github for Windowsには、次の2つのコマンドが含まれています。

  1. revert this commit-このコミットの変更を元に戻す新しいコミットを作成する
  2. rollback this commit-このコミットをロールバックして、これで行われたすべての変更を残し、その後の作業ディレクトリでのコミット

これら2つのコマンドの正確な意味とその使用方法を説明してください。具体的には、2番目の目的の目的を理解できません。私には意味がありません。

以前のコミットに戻ってチェックアウトすることは可能ですか?それが気に入らない場合は、元の場所に戻りますか?

このGUIはgitシステムのごく一部を特徴としていますが、それを利用する適切なワークフローは何でしょうか?

44
Zingam

リポジトリに単一のファイルがあり、次のコミットがあるとします。

commit 1 : the file contains A
commit 2 : the file contains B
commit 3 : the file contains C

commit 3でrevertを実行すると、リポジトリに次のようになります。

commit 1 : the file contains A
commit 2 : the file contains B
commit 3 : the file contains C
commit 4 : the file contains B

また、作業コピーのファイルにはBも含まれます。

ロールバックを実行すると、リポジトリに次のようになります。

commit 1 : the file contains A
commit 2 : the file contains B

そして、作業コピーのファイルは変更されないままになります。そのため、ファイルにはCが含まれます。たとえば、小さな間違いを修正して、再度コミットすることができます。

54
JB Nizet

以前のコミットに戻ってチェックアウトすることは可能ですか?それが気に入らない場合は、元の場所に戻りますか?

現在(2013年3月)、GitHub for Windowsで、gitコマンドを入力せずにロールバックを取り消すことができます。

GitHub for Windowsの元に戻すボタン 」を参照してください。

破棄、コミット、ロールバック、マージのサポートを元に戻すを追加しました

Undo button

12
VonC