From: Avery Pennarun <apenwarr@gmail.com>
To: Scott Chacon <schacon@gmail.com>
Cc: git list <git@vger.kernel.org>
Subject: Re: EasyGit Integration
Date: Tue, 9 Jun 2009 15:52:46 -0400 [thread overview]
Message-ID: <32541b130906091252i6c96c44buc148bb525d7cde14@mail.gmail.com> (raw)
In-Reply-To: <d411cc4a0906091159r51e7d16t4d66c6225322fb60@mail.gmail.com>
On Tue, Jun 9, 2009 at 2:59 PM, Scott Chacon<schacon@gmail.com> 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.
> * adds 'git resolved' for 'git add', which I hear all the time as
> being confusing
This one doesn't really do it for me. svn's need to "resolve" a file
after removing its conflicts always annoyed me. Look, you can see
I've screwed around with the file. The file contains no more
conflicts. It's resolved, already!
Maybe it's heresy, but I really liked CVS's way of dealing with this:
if the file still has conflict markers in it, it's not resolved. If
it doesn't, then it's resolved. Very hard to mess up. And I've
definitely messed up (and known other people to mess up) with both
svn's method and git's method, both of which allow you to commit files
with conflict markers without getting warned.
> * adds 'git publish' for creating a bare repo from your current repo
> and scp/rsync-ing it to a server (which is nice if you're not using
> GitHub/repo.or.cz where remote repo seeding is easier)
Very cool, and this has been seriously hard to explain to people. I'm
not even sure there *is* a good way to do this without running a
series of several commands.
> * adds 'git info' which shows a bunch of basic information about the
> repo, which is actually pretty cool
Less important to me, but sounds fine just due to svn compatibility.
> * 'git push origin --delete <branch>' for 'git push origin :branch'
This would help a lot of people too, I think. Although some might
argue that "helping" them to delete branches is maybe not a great
idea.
Have fun,
Avery
next prev parent reply other threads:[~2009-06-09 19:53 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-09 18:59 EasyGit Integration Scott Chacon
2009-06-09 19:43 ` Nicolas Pitre
2009-06-09 19:52 ` Avery Pennarun [this message]
2009-06-09 20:37 ` Björn Steinbrink
2009-06-09 20:42 ` Avery Pennarun
2009-06-10 12:13 ` Björn Steinbrink
2009-06-09 20:49 ` Elijah Newren
2009-06-10 1:09 ` Miles Bader
2009-06-09 20:12 ` Björn Steinbrink
2009-06-09 20:40 ` Elijah Newren
2009-06-09 21:18 ` Björn Steinbrink
2009-06-09 21:27 ` Björn Steinbrink
2009-06-09 21:36 ` Junio C Hamano
2009-06-09 21:48 ` Elijah Newren
2009-06-09 22:00 ` Elijah Newren
2009-06-10 12:52 ` Matthieu Moy
2009-06-09 22:14 ` Linus Torvalds
2009-06-09 22:30 ` Elijah Newren
2009-06-09 22:40 ` Linus Torvalds
2009-06-10 0:40 ` Mark Lodato
2009-06-10 3:11 ` Miles Bader
2009-06-10 3:32 ` Theodore Tso
2009-06-10 4:03 ` Linus Torvalds
2009-06-10 22:31 ` Felipe Contreras
2009-06-10 23:04 ` Linus Torvalds
2009-06-10 23:57 ` Scott Chacon
2009-06-11 0:15 ` Jakub Narebski
2009-06-11 0:30 ` Felipe Contreras
2009-06-11 0:42 ` Jakub Narebski
2009-06-12 20:57 ` Felipe Contreras
2009-06-12 21:21 ` Jakub Narebski
2009-06-12 21:48 ` Felipe Contreras
2009-06-12 22:05 ` Jakub Narebski
2009-06-12 22:30 ` Felipe Contreras
2009-06-13 1:24 ` Björn Steinbrink
2009-06-11 0:18 ` Felipe Contreras
2009-06-10 4:20 ` Elijah Newren
2009-06-10 14:40 ` Matthieu Moy
2009-06-10 1:25 ` Sam Vilain
2009-06-10 1:59 ` Linus Torvalds
2009-06-10 2:18 ` Junio C Hamano
2009-06-10 2:52 ` Sam Vilain
2009-06-10 6:43 ` Jakub Narebski
2009-06-10 3:27 ` Nicolas Pitre
2009-06-10 20:47 ` Junio C Hamano
2009-06-10 22:28 ` Elijah Newren
2009-06-10 16:48 ` Scott Chacon
2009-06-10 22:15 ` Felipe Contreras
2009-06-10 22:04 ` Felipe Contreras
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=32541b130906091252i6c96c44buc148bb525d7cde14@mail.gmail.com \
--to=apenwarr@gmail.com \
--cc=git@vger.kernel.org \
--cc=schacon@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).