git」タグアーカイブ

gitであるファイルを元に戻す方法

元に戻したいファイルのログを表示

foo.txtのログ(変更履歴)を表示する

$ git log foo.txt

実行結果

commit 51ab9a2761dd5f506c8d7ce93f69512c873e1869
Author: Kensuke ARAKAWA <miyavi@ojarumaru.jp>
Date:   Mon Nov 11 17:23:07 2019 +0900

    feat: something

commit 1f5f1d153407402e3a6c45d0d0a27a7b7af46746
Author: Kensuke ARAKAWA <miyavi@ojarumaru.jp>
Date:   Fri Nov 8 19:01:08 2019 +0900

    feat: something

commit 45eeb1882ac48110ac87bd6a6b4b23b6da27be95
Author: Kensuke ARAKAWA <miyavi@ojarumaru.jp>
Date:   Tue Nov 5 18:06:51 2019 +0900

    feat: something

元に戻す

例えば、commit 1f5f1d153407402e3a6c45d0d0a27a7b7af46746 に戻す場合は、

$ git checkout 1f5f1d153407402e3a6c45d0d0a27a7b7af46746 foo.txt
$ git checkout [commit] [filepath]

特定のファイルだけを前のコミットに戻す

特定のファイルだけを元に戻す方法

戻したいコミットのハッシュを調べる

$ git log

どのファイルが更新されたかは、

$ git log --stat

で確認することができる。

元に戻す

$ git checkout <hash> <filepath>

<hash>に元に戻したいコミットのハッシュを指定。

High Sierraでgitが使えなくなったら

MacをHigh Sierraにアップグレードしたところ、gitが使えなくなってしまった

$ git xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

Developerツールを再インストールさせなければならないらしい。

unity$ xcode-select --install
xcode-select: note: install requested for command line developer tools

確認ダイアログが出るのでOKを押せば、インストールが始まる。インストールを完了すると、これまで通り、gitが使える様になる。

Via! https://e-yota.com/idle_talk/mac-os-high-sierra_git_xcrun_error/

既存のレポジトリに.gitignoreを後から反映させる方法

あとから、.gitignoreを設置したけど、一発で.gitignoreを全体に反映させる。

一気に、レポジトリから削除(除外)

以下のコマンドで、.gitignoreから除外を反映させる

$ git rm --cached `git ls-files --full-name -i --exclude-from=.gitignore`

確認&反映

$ git status
$ git commit -m 'Reflected .gitignore'

via!
あとからまとめて.gitignoreする方法