3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

元に戻すgitコマンド その4(git add し忘れたファイルがあった時 編)

Posted at

はじめに

Webエンジニアになって2年目。そろそろ、addcopmmitpushpull、あと、ブランチ切ること以外も覚えたいなと思い、Gitでずっと気になってた各種**「元に戻す操作」**を勉強がてら記事を書こうと思いました。

Gitの操作をしていると、失敗して元に戻したい時は結構多いんじゃないかなーと思います。戻したい場面はいくつかあると思います。

今回は、git addし忘れたファイルがあった時の対処について書いていこうと思います。

どんな場面か?

いい感じの粒度でまとめたコミットにしたいと思いますよね?でもgit addし忘れたファイルがあった時、追加したいファイルを忘れてコミットしてしまったので、もう一度コミットをやり直したい場合がありますよね。

解決方法

この場合、そのファイルを指定してgit addして、git commit amendすれば大丈夫です。

ちなみに、英単語 amend は、修正する、という意味です。

$ git add 追加し忘れたファイル名
$ git commit --amend

実際にやって見ましょう。

以下に、2つのファイルがあったとします。

sample.txt
サンプルテキストファイル

変な事書いちゃった!w
practice.txt
練習用のテキストファイル

変な事書いちゃった!w

上記二つのテキストファイルですが、変な事を書いちゃってます。なので、その記述を消してコミットしたいところですね。

両方のファイルの変な事書いちゃった!wという記述を消して..

$ git add sample.txt
$ git commit -m "変なコード削除"
[master 71552a3] 変なコード削除
 1 file changed, 1 insertion(+), 3 deletions(-)

今回の例では、sample.txtだけコミットして、practice.txtをコミットし忘れて、コミットしたい時、どうしたらいいでしょうか?

この場合は、再度 git add で追加し忘れたファイルを追加し、git commit --amend を実行すれば、コミットし忘れたファイルが追加された状態でコミットされます。

$ git add 追加し忘れたファイル
$ git commit --amend

実例

$ git add practice.txt
$ git commit --amend
[master c7f9ff8] 変なコード削除
 Date: Fri Jun 1 03:25:00 2018 +0000
 2 files changed, 2 insertions(+), 10 deletions(-)

解決したかの確認方法

確認方法には、コミット履歴の閲覧ができるgit logを使って、一個前だけ見るオプション-1diffを見られる-pをつけたらいいと思います。

$ git log -p -1

以上です。

親記事(まとめ記事)

この記事の親記事(まとめ記事?)がありまして、そこでは、gitを使ったさまざまな元に戻す方法の記事をまとめています。ぜひ、見てください。

参考

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?