skillup

技術ブログ

Git

ファイルを戻したい時のGitコマンド(主にgit resetの用法)

投稿日:2020年10月18日 更新日:

使用ケースでGitコマンドを復習してみようかなと思いました。

主にgit resetの用法整理ですが・・・

ローカルを間違ってaddしてしまい、インデックスへの変更を取り除きたい

git reset ファイル名(ファイル名未指定だと全ファイル)

*正確には git reset --mixed のようです。省略するとmixedになります。

まだコミット内容がある、あるいは間違ってcommitしてしまい、commitだけ取り消したい、インデックスの内容や作業ファイル自体はいじりたくない場合

git reset --soft HEAD^

自分の場合、再修正して

git add && git commit --amend

とやることが多かったですね。(どっちにしろcommitするので)

以前の状態にファイル全部を直したい、過去の特定の日時でシステム全体がどうだったかを見たい時

git reset --hard ハッシュ値

特定のファイルを特定のコミットに戻したい

git checkout ハッシュ値 ファイル

間違って変更してしまったファイル(コミットしていない)の取り消し

git checkout HEAD ファイル

間違ってマージしてしまったものを元に戻したい時

git reset merge

↑は実質的に git reset --hard HEAD^ と同じ。

git reset (–hard/–soft)]ワーキングツリー、インデックス、HEADを使いこなす方法

git-resetは結局何を戻すのか

-Git

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

JSリンク集+git ブランチ指定 clone

現状の私の課題としてUIに対する意識が甘いということが上げられます。 大昔のサイトで使っているようなわかりにくいUIをそのまま使っているんですよね。 UIといってもいろいろな要素が必要となってきますが …

no image

Gitで統合 merge関連

本日はずっとブランチ間の統合を行っておりました。 たとえばhogeブランチとfooブランチの統合をする場合、差分を最初に確認すると思いますが、 [crayon-610029a10fcbb5785506 …

no image

gitのfetch/merge/rebaseについて その2

以前、gitのfetch/mergeについての記事を書きましたが、理論的なことは書いてあっても実際に処理の流れをかいていなかったので、今回はそのことについてメモリます。 Contents1 競合が起き …

no image

gitのfetch/merge/rebaseについて

git使って結構立ってるんですがいまだに仕組みがややこしく結構難しいなあと感じています。 基本的な使い方は以前紹介した「gitの紹介と基本的な使用法について」でいいと思います。 開発をやっていますと一 …

no image

gitの紹介と基本的な使用法について

Contents1 旧来のソース管理方法2 バージョン管理ツール2.1 バージョン管理とは?2.2 有名なバージョン管理ソフト3 Gitの基本的な使用法3.1 初期化(git init)3.2 基本的 …