Skip to content

Instantly share code, notes, and snippets.

@tonini
Last active December 21, 2015 10:19
Show Gist options
  • Save tonini/6291324 to your computer and use it in GitHub Desktop.
Save tonini/6291324 to your computer and use it in GitHub Desktop.
tonini:git_reset_hard(master) $ git log
* f458ee5 (HEAD, master) add another file [Samuel Tonini] [14 seconds ago]
* 5e94340 just a file [Samuel Tonini] [69 seconds ago]
tonini:git_reset_hard(master) $ git reset --hard head^
HEAD is now at 5e94340 just a file
tonini:git_reset_hard(master) $ git reflog show
5e94340 HEAD@{0}: reset: moving to head^
f458ee5 HEAD@{1}: commit: add another file
5e94340 HEAD@{2}: commit (initial): just a file
tonini:git_reset_hard(master) $ git reset --hard HEAD@{1}
HEAD is now at f458ee5 add another file
tonini:git_reset_hard(master) $ git log
* f458ee5 (HEAD, master) add another file [Samuel Tonini] [66 seconds ago]
* 5e94340 just a file [Samuel Tonini] [2 minutes ago]
# .git tree before `git reset --hard head^`
tonini:git_reset_hard(master) $ tree .git
.git
├── COMMIT_EDITMSG
├── HEAD
├── MERGE_RR
├── config
├── description
├── hooks
│   ├── applypatch-msg.sample
│   ├── commit-msg.sample
│   ├── post-update.sample
│   ├── pre-applypatch.sample
│   ├── pre-commit.sample
│   ├── pre-push.sample
│   ├── pre-rebase.sample
│   ├── prepare-commit-msg.sample
│   └── update.sample
├── index
├── info
│   └── exclude
├── logs
│   ├── HEAD
│   └── refs
│   └── heads
│   └── master
├── objects
│   ├── 52
│   │   └── 0fbacac9855baaf58bc360fe34e22889745597
│   ├── 64
│   │   └── ebb6634568c6e6120f0b1827c7ed4fd3f1ad48
│   ├── 82
│   │   └── b7258c6f1b7365daa84908269cf562f0d0dff4
│   ├── e7
│   │   └── 0d0c94a93354ffc42180f68201680801098ef1
│   ├── ea
│   │   └── 4425923e4cd66311a642f190802070bacf261e
│   ├── f4
│   │   └── eb8806ddd109ede7203709f3296ee6621aeac4
│   ├── info
│   └── pack
├── refs
│   ├── heads
│   │   └── master
│   └── tags
└── rr-cache
# .git tree after `git reset --hard head^`
tonini:git_reset_hard(master) $ tree .git
.git
├── COMMIT_EDITMSG
├── HEAD
├── MERGE_RR
├── config
├── description
├── hooks
│   ├── applypatch-msg.sample
│   ├── commit-msg.sample
│   ├── post-update.sample
│   ├── pre-applypatch.sample
│   ├── pre-commit.sample
│   ├── pre-push.sample
│   ├── pre-rebase.sample
│   ├── prepare-commit-msg.sample
│   └── update.sample
├── index
├── info
│   └── exclude
├── logs
│   ├── HEAD
│   └── refs
│   └── heads
│   └── master
├── objects
│   ├── 52
│   │   └── 0fbacac9855baaf58bc360fe34e22889745597
│   ├── 64
│   │   └── ebb6634568c6e6120f0b1827c7ed4fd3f1ad48
│   ├── 82
│   │   └── b7258c6f1b7365daa84908269cf562f0d0dff4
│   ├── e7
│   │   └── 0d0c94a93354ffc42180f68201680801098ef1
│   ├── ea
│   │   └── 4425923e4cd66311a642f190802070bacf261e
│   ├── f4
│   │   └── eb8806ddd109ede7203709f3296ee6621aeac4
│   ├── info
│   └── pack
├── refs
│   ├── heads
│   │   └── master
│   └── tags
└── rr-cache
# what? Nothing happend? Sure check
# before `git reset --hard head^`
tonini:git_reset_hard(master) $ cat .git/refs/heads/master
82b7258c6f1b7365daa84908269cf562f0d0dff4
# after `git reset --hard head^`
tonini:git_reset_hard(master) $ cat .git/refs/heads/master
e70d0c94a93354ffc42180f68201680801098ef1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment