0
0

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 1 year has passed since last update.

[Git] 動作を試す 実行例19:resetでコミットを削除する・強制的に戻す

Last updated at Posted at 2023-05-09

Gitの動作を理解するために、Gitのコマンドを実際に試して、結果を見てみました。

1つの記事内で一連のGitコマンドが完結しているので、これら一連のコマンドを順に実行させて結果を見ることで、一連のGitの動作を実際に体感でき、一通り独習することが可能です。

※前回記事のリポジトリ状態からの続きになっています。

前回記事へ 目次へ:Git関連記事のまとめページ 次回記事へ

実行例

Gitで過去のコミットに一時的に戻る – Helve Tech Blog
https://helve-blog.com/posts/git/git-reset/

【Git入門】git commitを取り消したい、元に戻す方法まとめ - RAKUS Developers Blog | ラクス エンジニアブログ
https://tech-blog.rakus.co.jp/entry/20210528/git

引用:
「git reset」は「commit を取り消した」というコミット履歴が残りません。
リモートリポジトリで公開されているコミットに対して行うと、不整合が発生してしまい他のメンバーがpushできなくなります。

(※始めにコミット履歴状況を確認)
git log --oneline
↓
結果: 
94996a0 (HEAD -> master) message4
20bbab7 message3
00cad71 message2
4ace194 message1

(※始めに内容を確認)
type test1.txt
↓
結果: 
Sample-Added-11
Sample-Added-12
Sample-Added-13
Sample-Added-14

-----

git reset 00cad71
↓
結果: 
Unstaged changes after reset:
M       test1.txt
M       test2.txt

git log --oneline
↓
結果: 
00cad71 (HEAD -> master) message2
4ace194 message1

type test1.txt
↓
結果: 
Sample-Added-11
Sample-Added-12
Sample-Added-13
Sample-Added-14

git reset 94996a0

git log --oneline
↓
結果: 
94996a0 (HEAD -> master) message4
20bbab7 message3
00cad71 message2
4ace194 message1

-----

git reset --hard 00cad71
↓
結果: 
HEAD is now at 00cad71 message2

git log --oneline
↓
結果: 
00cad71 (HEAD -> master) message2
4ace194 message1

type test1.txt
↓
結果: 
Sample-Added-11
Sample-Added-12

git reset --hard 94996a0
↓
結果: 
HEAD is now at 94996a0 message4

git log --oneline
↓
結果: 
94996a0 (HEAD -> master) message4
20bbab7 message3
00cad71 message2
4ace194 message1

-----

git reset 00cad71
↓
結果: 
Unstaged changes after reset:
M       test1.txt
M       test2.txt

git commit -a -m "message5(after-reset)"
↓
結果: 
[master 9559e87] message5(after-reset)
 2 files changed, 3 insertions(+), 1 deletion(-)

git log --oneline
↓
結果: 
9559e87 (HEAD -> master) message5(after-reset)
00cad71 message2
4ace194 message1

git reset --hard 94996a0
↓
結果: 
HEAD is now at 94996a0 message4

git log --oneline
↓
結果: 
94996a0 (HEAD -> master) message4
20bbab7 message3
00cad71 message2
4ace194 message1

git status
↓
結果: 
On branch master
nothing to commit, working tree clean

※これで全て元の状態に戻った。

参考

Gitで過去のコミットに一時的に戻る – Helve Tech Blog
https://helve-blog.com/posts/git/git-reset/

Git で特定のコミットをマージする方法メモ - Qiita
https://qiita.com/ina_ryu/items/c0cd4a529562f2d5b13e

【Git入門】git commitを取り消したい、元に戻す方法まとめ - RAKUS Developers Blog | ラクス エンジニアブログ
https://tech-blog.rakus.co.jp/entry/20210528/git

【Git】一時的に過去のcommitに戻りたい - Qiita
https://qiita.com/yt_andante_11/items/866e45d771b28cf05bf2

環境

Windows 10、PortableGit-2.40.0-64-bitを使用、全てローカルPC上で実施、GitHub等は不使用。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?