Git

Git で一部のファイルのみ特定のコミットの状態に revert する方法

Git でローカルリポジトリの一部のファイルのみ以前の状態に戻す方法を。 いくつか方法がありますが、 git diffpatch を使う方法がかんたんなのではないかと思います。

$ cd [リポジトリのルート]
$ git diff HEAD..[特定のコミットのハッシュ] [対象のファイル] | patch

たとえば .htaccess を最終コミットのひとつ前の状態に戻したい場合は次のような形にします。

$ git diff HEAD..HEAD^ .htaccess | patch

コミットが必要なときはまた別途行います。

Git コマンドでブランチ名に問題があるときのエラー

エラー

warning: refname 'HEAD' is ambiguous

原因

原因は HEAD という名前のブランチ(あるいはタグ)が作成されていることです。 Git において HEAD は先頭コミットを指す予約語なので HEAD という名前を使うと上記警告が出ます。

対処方法

HEAD という名前のブランチを削除、あるいはリネームすることです。

削除:

$ git branch -d HEAD

リネーム:

ページ