🙂

git 特定のファイルのみ特定のコミット地点に戻したい

2024/12/09に公開

やりたいこと

特定のファイルだけ特定のコミット地点に戻したい
git revertだとすべてのファイルが巻き戻ってしまう

解決策

git restoreを使用する

git restore --source {戻したいログのコミットID} -- {ファイル名}

これで特定のファイルだけ特定のコミット地点に巻き戻しができました
コミットIDはgit logで確認
git checkoutgit resetでも同じことができるようです

https://tracpath.com/docs/git-restore/

おまけ リセットモードのオプション

よく見るオプションの意味が理解できていなかったので調べてみました
ステージングと作業ディレクトリをどうするかという意味っぽい
デフォルトは--mixedらしい

モード Head(履歴) ステージング 作業ディレクトリ
--soft 移動 そのまま そのまま
--mixed 移動 クリア そのまま
--hard 移動 クリア 変更を消去

Discussion