web-dev-qa-db-ja.com

特定のファイルに対するローカルの変更を元に戻す方法

特定のファイルに対するローカルの変更を元に戻そうとしています。何もコミットされていません。

すべての変更を元に戻したいときは、git revert --reset HEADを実行できます。ただし、この場合は、すべての変更をすべてのファイルに戻すことはしたくありません。

git-revert(3)のmanページを読んだ後でも、ファイルを元に戻す方法は私にとってはっきりしていないし明らかでもありません。

NAME
       git-revert - Revert some existing commits

SYNOPSIS
       git revert [--[no-]edit] [-n] [-m parent-number] [-s] <commit>...
       git revert --continue
       git revert --quit
       git revert --abort
...

これは gitの古いコミットで特定のファイルを元に戻す方法 に似ていますが、コミットは行われていません。そして、任意のコミットに戻りたいOPとは異なり、私はただファイルをそれのMASTERのコピーに戻すことを望みます。

SVNでは、問題のファイルを削除してからsvn updateを実行します。

変更を1つのファイルに戻す方法は?

140
jww

git revertは必要ありません。それは前のコミットを元に戻します。 git checkoutにgitのバージョンのファイルをmasterから取得させたいとします。

git checkout -- filename.txt

一般に、単一のファイルに対してgit操作を実行したい場合は-- filenameを使用してください。


257
mkasberg