Reset by checkout?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

One of the more underrepresented command I use in git use on a regular
basis is this "reset by checkout".  It's what's currently achieved by
this convoluted expression:

  `git checkout -B <current-branch-name> <tree-ish>`

This is such an useful notion that I can fathom why there isn't a better,
first-tier, alternative.  i.e.  How come there's no 'git reset
--checkout'?  The command above even prints "Reset branch
'<current-branch-name>'".

The problem with 'checkout -B' is it's so easy to mistype!  If I had a
yen for every time I accidentally left off the '<current-branch-name>'
part and created a branch named "<tree-ish>" at HEAD...

So, I defined alias.become '!git checkout -B "$(git symbolic-ref --short
HEAD)"' and was happy for a while.  Now, the lack is glaring every time
I'm explaining workflows to people who don't have the the alias.

Ok, the typical use case is: I'm on 'master' and I make a few test
commits.  Afterwards, I want to discard the commits and move back to
'origin/master'.  I could type 'reset --hard origin/master' and risk
blowing away dirty files if I'm not careful.  Or, I could use "reset by
checkout" and be carefree.

Any ideas?  Am I doing something wrong or unconventional?

Cheers,


-- 
Atsushi Nakagawa
<atnak@xxxxxxxxx>
Changes are made when there is inconvenience.

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]