On 2009.06.09 15:52:46 -0400, Avery Pennarun wrote: > On Tue, Jun 9, 2009 at 2:59 PM, Scott Chacon<schacon@xxxxxxxxx> wrote: > > * breaks the various things that 'checkout' does into separate > > commands - moves 'revert' to doing what 'checkout -- path' does, moves > > current 'revert' to 'cherry-pick --revert' (which someone mentioned > > was a good idea at the last GitTogether), and adds 'unstage' for > > 'reset HEAD file'. also adds a '-s' option to 'branch' to switch to > > the branch after you create it, which many people expect rather than > > 'checkout -b'. > > This would definitely make it easier to explain things to svn users. > To be honest, I'm not convinced svn's use of the word "revert" is > really right, though. Git's isn't *really* right either, since it > actually makes a new commit, it doesn't remove the old one like it > sounds like it does. Maybe 'reverse' would be a better name for what > git does, and we should just introduce another word for what svn does. > (With CVS, you just deleted the file and then did a checkout/update > on it again, which made sense to me. That works in git too.) > > Crazy idea: we could actually make 'git revert' do both: given a > commit, it applies the reverse as it does now. Given filenames, it > simply brings them back to HEAD. But maybe that's too crazy. Doesn't seem that crazy to me. But maybe a bit problematic if you want to support both, "git checkout -- ." and "git checkout HEAD -- .". And adding DWIMmery there seems dangerous, as in: git revert == git checkout -- . git revert HEAD == no uncommitted changes = revert commit HEAD uncommitted changes = revert to HEAD Björn -- 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