On Tuesday, January 19, 2016 at 11:12:30 AM UTC-6, Mike Williams wrote: > On 19/01/2016 00:32, James McCoy wrote: > > On Mon, Jan 18, 2016 at 08:36:47PM +0100, Bram Moolenaar wrote: > >> Let's face it, git is nice if you know how to use it, and otherwise it's > >> a very annoying tool. > > > > s/git/Vim/ in that sentence and I'm sure many would agree with that too. > > Any tool takes time to learn. If one doesn't want to spend the time to > > do that, then yes they're going to be annoyed with it. > > I remember a lot of git users complaining about not understanding hg to > which the answer was spend time learning it. Now we have the git users > complaining about people not learning git. >
The difference being that there is SO MUCH MORE to learn in Git. In Mercurial and most other systems you have ONE tree. You can add changes to that tree. You can get changes from other people or send changes to other people and they will get added to the ONE tree that exists. Git is designed with any number of trees and it's expected behavior that changesets will disappear every now and then and there is the whole "index" concept and "branches" that aren't really branches in the usual sense of the word but are really ephemeral labels attached to one line of development in one person's tree, plus the difference between "remote" and local, plus "tracking" branches and "detached head" and all sorts of other complexities that just are not present in most other tools. Git is designed for people like Linus Torvalds who spend all day long working with version control and massaging version trees until they are perfect. So Git is very good at manipulating history and tracking where each little bit came from. Mercurial is designed for people who use version control from time to time while they focus on working on the files in the repository. So Mercurial is very good at quickly storing changes and getting back out of your way without much thought required. I think the main trouble learning Mercurial is un-learning the complexities of Git. That and terms that are similar to Git terms but don't do the same thing at all. I think the main trouble learning Git is learning all the complex concepts unique to Git. That and the esoteric commands deliberately designed to be as different from SVN as possible because Linus hates SVN. Maybe that last part will be less trouble in a few years, but for now a lot of people starting Git originally cut their version-control teeth with SVN or even CVS. -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
