{"thread":{"id":"21071","subject":"Deciding between Git/Mercurial","startedAt":"2009-09-27T12:24:32Z","lastAt":"2009-10-22T08:01:25Z","messageCount":44,"participants":["Anteru","Robin Rosenberg","Alex Riesen","Mark Struberg","Pascal Obry","Erik Faye-Lund","Felipe Contreras","Matthieu Moy","Johannes Schindelin","Bruce Stephens","Dilip M","Damien Wyart","Steven Noonan","Sverre Rabbelier","Jakub Narebski","Randal L. Schwartz","Paolo Bonzini","Mike Ralphson","Daniele Segato","Leo Razoumov","Björn Steinbrink","Andreas Ericsson","Matthias Andree","Daniel Barkalow","Martin Langhoff"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"123896","messageId":"h9nlhj$heq$1@ger.gmane.org","threadId":"21071","inReplyTo":null,"subject":"Deciding between Git/Mercurial","fromName":"Anteru","fromEmail":"newsgroups@catchall.shelter13.net","sentAt":"2009-09-27T12:24:32Z","receivedAt":"2009-09-27T12:24:32Z","isPatch":false,"sender":{"key":"newsgroups@catchall.shelter13.net","avatar":null},"body":"Hi,\n\nI'm currently evaluating DVCS for a project, and we're at a point where\nit comes down to either Mercurial or Git. Right now, I'm advocating for\nGit, while my co-workers like Mercurial, so I'd like to provide some\ngood arguments in favor of git. Unfortunately, I'm not a git expert, so\nI hope I can get some help here ...\n\nFirst of all, what's the matter with git and Windows, is there some\nlong-term commitment to make git work on Windows as well as on Linux?\nI'm using msysgit on Windows, and personally I'm happy with it, but my\nco-workers constantly nag that Mercurial has superior portability ...\n\nMercurial's revision number system: With git, I get an SHA1 hash for\nevery commit, but it's not possible to see whether Hash1 is newer than\nHash2, while Mecurial also adds a running number to each commit. What's\nthe rationale behind this decision for git, and is it possible to\nemulate Mercurial's behavior somehow?\n\nIntegration into tools: We're using Trac currently, which also has a\nnice binding to Mercurial (well, obviously easy to do as Mercurial is\nwritten in Python, just as Trac itself), while the git support is in\ndevelopment and looks quite alpha'ish. Do you plan to make it easier to\nintegrate git with other tools by providing bindings to other languages,\nor is this a low-priority issue?\n\nSo far, my key arguments are that git is more robust (more projects\nusing it, larger developer base), of course git's excellent performance\nand the much better support for SVN, which is important for us as we can\nslowly migrate from SVN->Git, while hgmercurial is still in the making\n(and Python's SVN->Hg switch is for instance waiting for it).\n\nCheers,\n  Anteru\n"},{"id":"123899","messageId":"200909272001.48180.robin.rosenberg.lists@dewire.com","threadId":"21071","inReplyTo":"h9nlhj$heq$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Robin Rosenberg","fromEmail":"robin.rosenberg.lists@dewire.com","sentAt":"2009-09-27T18:01:47Z","receivedAt":"2009-09-27T18:01:47Z","isPatch":false,"sender":{"key":"robin.rosenberg@dewire.com","avatar":"https://avatars.githubusercontent.com/u/46357?v=4"},"body":"söndag 27 september 2009 14:24:32 skrev Anteru <newsgroups@catchall.shelter13.net>:\n> Hi,\n> \n> I'm currently evaluating DVCS for a project, and we're at a point where\n> it comes down to either Mercurial or Git. Right now, I'm advocating for\n> Git, while my co-workers like Mercurial, so I'd like to provide some\n> good arguments in favor of git. Unfortunately, I'm not a git expert, so\n> I hope I can get some help here ...\n\nYou have to read carefully. This (or the mercurial list) may not be the\nmost objective sources of information.\n\n> First of all, what's the matter with git and Windows, is there some\n> long-term commitment to make git work on Windows as well as on Linux?\n\nBesides msysgit there is JGit and a port of it to C# (and  thus any dotnet-ish \nlanguage). The msysgit teams seems very committed and passionate about\nthe project, but they need more assistance from genuine Windows users. Note\nthat the current model of file locking can never work as well on Windows\nas it does on Unix. Something better is needed for flawless operation.\n\n> I'm using msysgit on Windows, and personally I'm happy with it, but my\n> co-workers constantly nag that Mercurial has superior portability ...\n\nMight be somewhat true, but msysgit works very well. Not sure how\nmercurial handles unicode issues. CRLF issues seems to be ignored (not handled).\n\n> Mercurial's revision number system: With git, I get an SHA1 hash for\n> every commit, but it's not possible to see whether Hash1 is newer than\n> Hash2, while Mecurial also adds a running number to each commit. What's\n\nBut those numbers cannot be communicated since they are local to your\nclone.\n\n> the rationale behind this decision for git, and is it possible to\n> emulate Mercurial's behavior somehow?\n\ngit-cvsserver has to do something along those line  The numbering is\nper file.\n\nMaintainers tend to tag versions using the common numbered schem\nand that is typically enough.\n\n-- robin\n"},{"id":"123900","messageId":"h9o9qr$548$1@ger.gmane.org","threadId":"21071","inReplyTo":"200909272001.48180.robin.rosenberg.lists@dewire.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Anteru","fromEmail":"newsgroups@catchall.shelter13.net","sentAt":"2009-09-27T18:10:35Z","receivedAt":"2009-09-27T18:10:35Z","isPatch":false,"sender":{"key":"newsgroups@catchall.shelter13.net","avatar":null},"body":"Robin Rosenberg wrote:\n> You have to read carefully. This (or the mercurial list) may not be the\n> most objective sources of information.\nSure, but at the moment, I'm advocating pro-git, so I'm biased as well :)\n\n> Might be somewhat true, but msysgit works very well. Not sure how\n> mercurial handles unicode issues. CRLF issues seems to be ignored (not handled).\nYeah, well, the main question here is actually: Is improved support for\nWindows one of the goals of future git development, or is this a\ncomplete non-issue?\n\nCheers,\n  Anteru\n"},{"id":"123901","messageId":"81b0412b0909271144o26743e05uac3132cdc5b530b@mail.gmail.com","threadId":"21071","inReplyTo":"h9o9qr$548$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2009-09-27T18:44:34Z","receivedAt":"2009-09-27T18:44:34Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"On Sun, Sep 27, 2009 at 20:10, Anteru <newsgroups@catchall.shelter13.net> wrote:\n> Yeah, well, the main question here is actually: Is improved support for\n> Windows one of the goals of future git development, or is this a\n> complete non-issue?\n\nI just hope it is not. Improved Windows support mostly\nmeans lots of dead code (and that's the best outcome),\nwhich no other platform can use.\n"},{"id":"123902","messageId":"585748.13758.qm@web27802.mail.ukl.yahoo.com","threadId":"21071","inReplyTo":"81b0412b0909271144o26743e05uac3132cdc5b530b@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Mark Struberg","fromEmail":"struberg@yahoo.de","sentAt":"2009-09-27T18:51:36Z","receivedAt":"2009-09-27T18:51:36Z","isPatch":false,"sender":{"key":"struberg@yahoo.de","avatar":"https://gravatar.com/avatar/119742c3e8dbc8db35a92bdff0581aec8d364d415f770e60431cba262daa974f?d=mp&s=160"},"body":"Another thing to consider: For what kind of project/language do you need git? What build tools are you using and how good is the integration into both git and hg?\n\nLieGrue,\nstrub\n\n--- On Sun, 9/27/09, Alex Riesen <raa.lkml@gmail.com> wrote:\n\n> From: Alex Riesen <raa.lkml@gmail.com>\n> Subject: Re: Deciding between Git/Mercurial\n> To: newsgroups@catchall.shelter13.net\n> Cc: git@vger.kernel.org\n> Date: Sunday, September 27, 2009, 8:44 PM\n> On Sun, Sep 27, 2009 at 20:10, Anteru\n> <newsgroups@catchall.shelter13.net>\n> wrote:\n> > Yeah, well, the main question here is actually: Is\n> improved support for\n> > Windows one of the goals of future git development, or\n> is this a\n> > complete non-issue?\n> \n> I just hope it is not. Improved Windows support mostly\n> means lots of dead code (and that's the best outcome),\n> which no other platform can use.\n> --\n> To unsubscribe from this list: send the line \"unsubscribe\n> git\" in\n> the body of a message to majordomo@vger.kernel.org\n> More majordomo info at  http://vger.kernel.org/majordomo-info.html\n> \n\n\n      \n"},{"id":"123903","messageId":"4ABFB517.6040103@obry.net","threadId":"21071","inReplyTo":"h9o9qr$548$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Pascal Obry","fromEmail":"pascal@obry.net","sentAt":"2009-09-27T18:55:19Z","receivedAt":"2009-09-27T18:55:19Z","isPatch":false,"sender":{"key":"pascal@obry.net","avatar":"https://avatars.githubusercontent.com/u/467069?v=4"},"body":"Le 27/09/2009 20:10, Anteru a écrit :\n> Yeah, well, the main question here is actually: Is improved support for\n> Windows one of the goals of future git development, or is this a\n> complete non-issue?\n\nI think it is a non-issue as Git compile out of the box with Cygwin. \nSince many years I'm building Git almost daily from master under my \nWindows box using Cygwin. git-svn works like a charm too.\n\nPascal.\n\n-- \n\n--|------------------------------------------------------\n--| Pascal Obry                           Team-Ada Member\n--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE\n--|------------------------------------------------------\n--|    http://www.obry.net  -  http://v2p.fr.eu.org\n--| \"The best way to travel is by means of imagination\"\n--|\n--| gpg --keyserver keys.gnupg.net --recv-key F949BD3B\n"},{"id":"123905","messageId":"h9odqq$ig9$1@ger.gmane.org","threadId":"21071","inReplyTo":"585748.13758.qm@web27802.mail.ukl.yahoo.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Anteru","fromEmail":"newsgroups@catchall.shelter13.net","sentAt":"2009-09-27T19:18:49Z","receivedAt":"2009-09-27T19:18:49Z","isPatch":false,"sender":{"key":"newsgroups@catchall.shelter13.net","avatar":null},"body":"Mark Struberg schrieb:\n> Another thing to consider: For what kind of project/language do you need git? What build tools are you using and how good is the integration into both git and hg?\nThe project is running on Windows/Linux (Windows being the primary\ndevelopment platform, and we also expect most users to run Windows.)\n\nFor tooling, we use Trac at the moment (good integration with SVN), but\nwe're evaluating GitTrac, Trac/Mercurial and Redmine now (+ possible\nmigration paths.) For our build system, it's a non-issue anyway, as\ngit/mercurial have command line clients, and that's all we need.\n\nDon't get me wrong with Git+msysgit on Windows, the point is simply if\nwe switch to git, can we expect that Windows will be supported for the\nforeseeable future or is it possible that git may simply drop Windows\nsupport completely? For Mercurial, this is a non-issue, as it is written\nin Python, and Python will support both Windows and Linux.\n\nAs I said, I'm happy with using msysgit, but I cannot find any roadmap\netc. which helps me to determine how git and Windows is going to\ncontinue (for instance, I can find some complaints that git's\nperformance is bad on Windows due to cygwin's fork()/exec(), is this\nlikely to get ever \"fixed\"? I guess git# will solve this as soon as it's\nready?)\n\nCheers,\n  Anteru\n"},{"id":"123906","messageId":"81b0412b0909271231u54fbe035n3ce2503237b5ebf3@mail.gmail.com","threadId":"21071","inReplyTo":"h9odqq$ig9$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2009-09-27T19:31:50Z","receivedAt":"2009-09-27T19:31:50Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"On Sun, Sep 27, 2009 at 21:18, Anteru <newsgroups@catchall.shelter13.net> wrote:\n> Don't get me wrong with Git+msysgit on Windows, the point is simply if\n> we switch to git, can we expect that Windows will be supported for the\n> foreseeable future or is it possible that git may simply drop Windows\n> support completely? ...\n\nDespite what I said, this is very unlikely (sadly). There are active developers\nwhose professional life happens in Windows. Besides, the project is open-\nsource and no one can stop you from taking over the maintainership of a port.\n\n> As I said, I'm happy with using msysgit, but I cannot find any roadmap\n\nThere isn't any. Roadmaps are for projects with a guaranteed end of life :-p\n\n> etc. which helps me to determine how git and Windows is going to\n> continue (for instance, I can find some complaints that git's\n> performance is bad on Windows due to cygwin's fork()/exec(), is this\n> likely to get ever \"fixed\"?\n\nNot likely. OTOH, msysGIT does not have that part of performance problem.\n"},{"id":"123907","messageId":"40aa078e0909271234l227e9d27i71fcdc788a78c850@mail.gmail.com","threadId":"21071","inReplyTo":"h9odqq$ig9$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Erik Faye-Lund","fromEmail":"kusmabite@googlemail.com","sentAt":"2009-09-27T19:34:54Z","receivedAt":"2009-09-27T19:34:54Z","isPatch":false,"sender":{"key":"kusmabite@gmail.com","avatar":"https://avatars.githubusercontent.com/u/47073?v=4"},"body":"On Sun, Sep 27, 2009 at 9:18 PM, Anteru\n<newsgroups@catchall.shelter13.net> wrote:\n> Don't get me wrong with Git+msysgit on Windows, the point is simply if\n> we switch to git, can we expect that Windows will be supported for the\n> foreseeable future or is it possible that git may simply drop Windows\n> support completely? For Mercurial, this is a non-issue, as it is written\n> in Python, and Python will support both Windows and Linux.\n\nThe chance of Windows support being dropped from git is very unlikely\n- there's way too many people depending on git for Windows already for\nthat to happen. Besides, git is open source, so you can always fix\nWindows issues yourself.\n\nAs for Mercurial, Python programs aren't automatically portable to\nWindows either. But I expect that they have the same very close to\nzero chance of having Windows support dropped as git has.\n\n> As I said, I'm happy with using msysgit, but I cannot find any roadmap\n> etc. which helps me to determine how git and Windows is going to\n> continue (for instance, I can find some complaints that git's\n> performance is bad on Windows due to cygwin's fork()/exec(), is this\n> likely to get ever \"fixed\"? I guess git# will solve this as soon as it's\n> ready?)\n\nGit (neither mainline nor msysgit) doesn't have any official roadmap\nas far as I know. People just hack away on what they feel is\nimportant. If you want to make sure something gets done, chip in the\ndevelopment-time yourself.\n\nAs for the fork()-performance, this is only an issue for some tools\n(if any at all - I don't think this issue exists in msysgit). In my\nexperience, git on Windows is faster than any other VCS I've ever used\non Windows.\n\n-- \nErik \"kusma\" Faye-Lund\nkusmabite@gmail.com\n(+47) 986 59 656\n"},{"id":"123926","messageId":"94a0d4530909280136s1ff65004q1733bd4ef78bdc07@mail.gmail.com","threadId":"21071","inReplyTo":"h9nlhj$heq$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Felipe Contreras","fromEmail":"felipe.contreras@gmail.com","sentAt":"2009-09-28T08:36:49Z","receivedAt":"2009-09-28T08:36:49Z","isPatch":false,"sender":{"key":"felipe.contreras@gmail.com","avatar":"https://avatars.githubusercontent.com/u/8358?v=4"},"body":"On Sun, Sep 27, 2009 at 3:24 PM, Anteru\n<newsgroups@catchall.shelter13.net> wrote:\n> Hi,\n>\n> I'm currently evaluating DVCS for a project, and we're at a point where\n> it comes down to either Mercurial or Git. Right now, I'm advocating for\n> Git, while my co-workers like Mercurial, so I'd like to provide some\n> good arguments in favor of git. Unfortunately, I'm not a git expert, so\n> I hope I can get some help here ...\n\nIMO the key difference between hg and git is the storage model: hg\nstores deltas, while git stores snapshots. That would mean that\ncertain operations are theoretically faster in git (e.g. checkout,\ndiff) while others faster in hg, although with git's packed format I\nguess there's no operation faster in hg. This means that it doesn't\nmatter how much hg's python code improves, or if they even re-write\nparts in C, they will never be able to match git's performance (unless\nthey change the storage model, which essentially means changing the\nwhole design -- won't happen).\n\nAll this is just guesses, I've thought about doing some measurements\nbut I haven't had time.\n\nCheers.\n\n-- \nFelipe Contreras\n"},{"id":"123927","messageId":"vpq7hvjfojb.fsf@bauges.imag.fr","threadId":"21071","inReplyTo":"94a0d4530909280136s1ff65004q1733bd4ef78bdc07@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Matthieu Moy","fromEmail":"matthieu.moy@grenoble-inp.fr","sentAt":"2009-09-28T08:42:48Z","receivedAt":"2009-09-28T08:42:48Z","isPatch":false,"sender":{"key":"matthieu.moy@grenoble-inp.fr","avatar":"https://gravatar.com/avatar/72c8a2705971a25dfaff23cece15130d405685845d911aedd5667ace277f3fc5?d=mp&s=160"},"body":"Felipe Contreras <felipe.contreras@gmail.com> writes:\n\n> IMO the key difference between hg and git is the storage model: hg\n> stores deltas, while git stores snapshots.\n\nMercurial stores regular snapshots, to make sure you never have to\napply too many deltas to get a snapshot. That's not so different from\nwhat Git does with its packed format (the difference is that Git's\ndelta are not necessarily against the direct ancestor of the file).\n\nAFAICT, both are snapshot-oriented, but both use a compression\nalgorithm based on delta.\n\n-- \nMatthieu Moy\nhttp://www-verimag.imag.fr/~moy/\n"},{"id":"123933","messageId":"alpine.DEB.1.00.0909281059180.4985@pacific.mpi-cbg.de","threadId":"21071","inReplyTo":"94a0d4530909280136s1ff65004q1733bd4ef78bdc07@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2009-09-28T10:08:22Z","receivedAt":"2009-09-28T10:08:22Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nI tried to refrain from commenting in this thread, because I do not want \nto encourage people just to use msysGit and never even attempt to fix \ntheir own issues.\n\nBut I cannot let this go uncommented:\n\nOn Mon, 28 Sep 2009, Felipe Contreras wrote:\n\n> IMO the key difference between hg and git is the storage model: hg \n> stores deltas, while git stores snapshots. That would mean that certain \n> operations are theoretically faster in git (e.g. checkout, diff) while \n> others faster in hg, although with git's packed format I guess there's \n> no operation faster in hg. This means that it doesn't matter how much \n> hg's python code improves, or if they even re-write parts in C, they \n> will never be able to match git's performance (unless they change the \n> storage model, which essentially means changing the whole design -- \n> won't happen).\n\nThat is wrong.  \"git log -- <file>\" will always be slightly faster in \nMercurial, for all the reasons you mentioned.\n\nIn addition, Mercurial _has_ parts re-written in C for performance, which \nrenders it not-exactly more portable if you ask me.  Last time I checked, \nthere was no way to compile a Python module with MinGW (or for that \nmatter, Python itself), but you needed MSVC...\n\nCiao,\nDscho\n"},{"id":"123938","messageId":"94a0d4530909280401q4a451697re8954320682662f2@mail.gmail.com","threadId":"21071","inReplyTo":"alpine.DEB.1.00.0909281059180.4985@pacific.mpi-cbg.de","subject":"Re: Deciding between Git/Mercurial","fromName":"Felipe Contreras","fromEmail":"felipe.contreras@gmail.com","sentAt":"2009-09-28T11:01:48Z","receivedAt":"2009-09-28T11:01:48Z","isPatch":false,"sender":{"key":"felipe.contreras@gmail.com","avatar":"https://avatars.githubusercontent.com/u/8358?v=4"},"body":"On Mon, Sep 28, 2009 at 1:08 PM, Johannes Schindelin\n<Johannes.Schindelin@gmx.de> wrote:\n> Hi,\n>\n> I tried to refrain from commenting in this thread, because I do not want\n> to encourage people just to use msysGit and never even attempt to fix\n> their own issues.\n>\n> But I cannot let this go uncommented:\n>\n> On Mon, 28 Sep 2009, Felipe Contreras wrote:\n>\n>> IMO the key difference between hg and git is the storage model: hg\n>> stores deltas, while git stores snapshots. That would mean that certain\n>> operations are theoretically faster in git (e.g. checkout, diff) while\n>> others faster in hg, although with git's packed format I guess there's\n>> no operation faster in hg. This means that it doesn't matter how much\n>> hg's python code improves, or if they even re-write parts in C, they\n>> will never be able to match git's performance (unless they change the\n>> storage model, which essentially means changing the whole design --\n>> won't happen).\n>\n> That is wrong.  \"git log -- <file>\" will always be slightly faster in\n> Mercurial, for all the reasons you mentioned.\n\nOk, thanks for pointing that out. I was thinking that maybe 'git\nblame' would also be slightly faster on hg, but I really don't know.\nAnyway, I think for most operations git would always be faster, and\nmore importantly; some essential operations will be faster (checkout,\ndiff <committish>).\n\n-- \nFelipe Contreras\n"},{"id":"123939","messageId":"804oqn5nes.fsf@tiny.isode.net","threadId":"21071","inReplyTo":"94a0d4530909280401q4a451697re8954320682662f2@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Bruce Stephens","fromEmail":"bruce.stephens@isode.com","sentAt":"2009-09-28T11:17:15Z","receivedAt":"2009-09-28T11:17:15Z","isPatch":false,"sender":{"key":"bruce.stephens@isode.com","avatar":null},"body":"Felipe Contreras <felipe.contreras@gmail.com> writes:\n\n[...]\n\n> Ok, thanks for pointing that out. I was thinking that maybe 'git\n> blame' would also be slightly faster on hg, but I really don't know.\n\nhg (and git) store binary deltas.  AFAIK neither attempts to use those\nto produce output for blame, diff, etc.  (git's deltas may well be\nslightly different from mercurial's, in that git's can be deltas with\nrespect to something arbitrary so even if they had a suitable line-based\nformat they'd be useless for diff, blame.)\n\nSimilarly for the other major systems, with the exception of (I think)\nbzr and darcs.  (I don't know how bzr or darcs actually work, but IIRC\nthey both have line-based storage that in principle might be usable in\ncomputing blame and diff.)\n\n[...]\n"},{"id":"123940","messageId":"c94f8e120909280432r35794641ycd50b4cee0bd89b7@mail.gmail.com","threadId":"21071","inReplyTo":"h9nlhj$heq$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Dilip M","fromEmail":"dilipm79@gmail.com","sentAt":"2009-09-28T11:32:06Z","receivedAt":"2009-09-28T11:32:06Z","isPatch":false,"sender":{"key":"dilipm79@gmail.com","avatar":"https://gravatar.com/avatar/9417e308513ce9251de2802a026c72eb164e6c9b9d7143a3ee13f6ed0c4d1bd5?d=mp&s=160"},"body":"You better evaluate yourself on the project you are going to use git\nor Hg. Hg and git are used both by big companies. Google uses git to\nhost android, where as it also uses Hg to host google wave! So don't\ngo which company uses what, but try to evaluate... Check what is the\nkind of operations your developers do often? Is it checkout, diff,\nblame, also are they ready to do git gc often? What about developer\nwho is not interested in using cli? How do u care them for operations\nthey intended to do? what is the workflow? Which tools supports it to\ngreat extent?\n\nAt the end of day, it is a developer who spends much time using tool..\n\nJust  my opinion...... you put this question in Hg list, I bet you\nwill get the different views....\n\nThe above is solely my opinion and I am not biased! I think so:)\n\n\n\nOn 9/27/09, Anteru <newsgroups@catchall.shelter13.net> wrote:\n> Hi,\n>\n> I'm currently evaluating DVCS for a project, and we're at a point where\n> it comes down to either Mercurial or Git. Right now, I'm advocating for\n> Git, while my co-workers like Mercurial, so I'd like to provide some\n> good arguments in favor of git. Unfortunately, I'm not a git expert, so\n> I hope I can get some help here ...\n>\n> First of all, what's the matter with git and Windows, is there some\n> long-term commitment to make git work on Windows as well as on Linux?\n> I'm using msysgit on Windows, and personally I'm happy with it, but my\n> co-workers constantly nag that Mercurial has superior portability ...\n>\n> Mercurial's revision number system: With git, I get an SHA1 hash for\n> every commit, but it's not possible to see whether Hash1 is newer than\n> Hash2, while Mecurial also adds a running number to each commit. What's\n> the rationale behind this decision for git, and is it possible to\n> emulate Mercurial's behavior somehow?\n>\n> Integration into tools: We're using Trac currently, which also has a\n> nice binding to Mercurial (well, obviously easy to do as Mercurial is\n> written in Python, just as Trac itself), while the git support is in\n> development and looks quite alpha'ish. Do you plan to make it easier to\n> integrate git with other tools by providing bindings to other languages,\n> or is this a low-priority issue?\n>\n> So far, my key arguments are that git is more robust (more projects\n> using it, larger developer base), of course git's excellent performance\n> and the much better support for SVN, which is important for us as we can\n> slowly migrate from SVN->Git, while hgmercurial is still in the making\n> (and Python's SVN->Hg switch is for instance waiting for it).\n>\n> Cheers,\n>   Anteru\n>\n> --\n> To unsubscribe from this list: send the line \"unsubscribe git\" in\n> the body of a message to majordomo@vger.kernel.org\n> More majordomo info at  http://vger.kernel.org/majordomo-info.html\n>\n\n-- \nSent from my mobile device\n\nDilip\n"},{"id":"123961","messageId":"20090928205458.GA2669@brouette","threadId":"21071","inReplyTo":"h9nlhj$heq$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Damien Wyart","fromEmail":"damien.wyart@gmail.com","sentAt":"2009-09-28T20:54:58Z","receivedAt":"2009-09-28T20:54:58Z","isPatch":false,"sender":{"key":"damien.wyart@gmail.com","avatar":null},"body":"Hello,\n\n* Anteru <newsgroups@catchall.shelter13.net> [2009-09-27 14:24]:\n> Integration into tools: We're using Trac currently, which also has\n> a nice binding to Mercurial (well, obviously easy to do as Mercurial\n> is written in Python, just as Trac itself), while the git support is\n> in development and looks quite alpha'ish. Do you plan to make it\n> easier to integrate git with other tools by providing bindings to\n> other languages, or is this a low-priority issue?\n\nTrac is one of the the most well-known project management tools, but\nIndefero is also interesting, and itegrates Git better than Trac:\nhttp://www.indefero.net/\n\n\nBest,\n\n-- \nDamien Wyart\n"},{"id":"123962","messageId":"f488382f0909281409n1c1f7e5ex64a10147a14e39a@mail.gmail.com","threadId":"21071","inReplyTo":"20090928205458.GA2669@brouette","subject":"Re: Deciding between Git/Mercurial","fromName":"Steven Noonan","fromEmail":"steven@uplinklabs.net","sentAt":"2009-09-28T21:09:44Z","receivedAt":"2009-09-28T21:09:44Z","isPatch":false,"sender":{"key":"steven@uplinklabs.net","avatar":"https://gravatar.com/avatar/b0cd397a10638433f76e084531aa0af3bef85f8fdb59b1ebe2ddaf168cd100e9?d=mp&s=160"},"body":"On Mon, Sep 28, 2009 at 1:54 PM, Damien Wyart <damien.wyart@gmail.com> wrote:\n> Hello,\n>\n> * Anteru <newsgroups@catchall.shelter13.net> [2009-09-27 14:24]:\n>> Integration into tools: We're using Trac currently, which also has\n>> a nice binding to Mercurial (well, obviously easy to do as Mercurial\n>> is written in Python, just as Trac itself), while the git support is\n>> in development and looks quite alpha'ish. Do you plan to make it\n>> easier to integrate git with other tools by providing bindings to\n>> other languages, or is this a low-priority issue?\n>\n> Trac is one of the the most well-known project management tools, but\n> Indefero is also interesting, and itegrates Git better than Trac:\n> http://www.indefero.net/\n>\n\nThe interface looks very similar to Google Code's. I wonder, is this\nthe same thing that Google is using, or is it just mimicking the\ninterface?\n\n- Steven\n"},{"id":"123963","messageId":"fabb9a1e0909281433l461086e3k93a138ad4b9b86c6@mail.gmail.com","threadId":"21071","inReplyTo":"f488382f0909281409n1c1f7e5ex64a10147a14e39a@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Sverre Rabbelier","fromEmail":"srabbelier@gmail.com","sentAt":"2009-09-28T21:33:30Z","receivedAt":"2009-09-28T21:33:30Z","isPatch":false,"sender":{"key":"srabbelier@gmail.com","avatar":"https://avatars.githubusercontent.com/u/3098?v=4"},"body":"Heya,\n\nOn Mon, Sep 28, 2009 at 23:09, Steven Noonan <steven@uplinklabs.net> wrote:\n> The interface looks very similar to Google Code's. I wonder, is this\n> the same thing that Google is using, or is it just mimicking the\n> interface?\n\nWhow, it _does_ look a lot like Google Code, I doubt it's the same\ncode as I don't think Google Code's verison is open source, pretty\ngood copy either way.\n\n-- \nCheers,\n\nSverre Rabbelier\n"},{"id":"123965","messageId":"m33a66br69.fsf@localhost.localdomain","threadId":"21071","inReplyTo":"h9nlhj$heq$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2009-09-28T23:11:46Z","receivedAt":"2009-09-28T23:11:46Z","isPatch":false,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Anteru <newsgroups@catchall.shelter13.net> writes:\n\n> I'm currently evaluating DVCS for a project, and we're at a point where\n> it comes down to either Mercurial or Git. Right now, I'm advocating for\n> Git, while my co-workers like Mercurial, so I'd like to provide some\n> good arguments in favor of git. Unfortunately, I'm not a git expert, so\n> I hope I can get some help here ...\n> \n> First of all, what's the matter with git and Windows, is there some\n> long-term commitment to make git work on Windows as well as on Linux?\n> I'm using msysgit on Windows, and personally I'm happy with it, but my\n> co-workers constantly nag that Mercurial has superior portability ...\n\nOn one hand side Git relies quite a bit on POSIX features; also some\nof git commands are implemented as shell scripts, or are written in\nPerl.  Nevertheless even if people stopped working on msysGit\n(\"native\" Windows port), which I don't see happening, there is always\nand will be git from Cygwin.  But the msysGit team is active, and I\npredict that it soon would be full equivalent of Git on Linux (there\nare some corner cases yet).  Lately there was even some work on\nsupport infrastructore for having Git be developed in MSVC.\n\nOn the other hand side Mercurial does have some parts of its code\nrewritten in C for efficiency.  I do wonder how portable it is, and\nwhat is more important how portable is the interface between C and\nPython.\n\nBut I do not use MS Windows for development, and I do not use\nMercurial...\n\n> Mercurial's revision number system: With git, I get an SHA1 hash for\n> every commit, but it's not possible to see whether Hash1 is newer than\n> Hash2, while Mecurial also adds a running number to each commit. What's\n> the rationale behind this decision for git, and is it possible to\n> emulate Mercurial's behavior somehow?\n\nFirst, you have to remember that this 'number of commit' thingy is\n*local* to your repository, so you cannot use commit numbers to\ncommunicate with other developers.  This is inherent and unavoidable\nproperty of 'revision numbering': commit identifiers must be derivable\nfrom commit contents (e.g. SHA-1 used by Git), or must be local to\nclone of repository (e.g. Mercurial), or there must be some central\nnumbering authority (like in centralized SCMs like Subversion).\n\nSecond, I think advantages of revision numbering (running number) are\noveremphasized.  I don't see how numbers such as 12678 and 12687 are\neasier to use than even abbreviated SHA-1 IDs like f06e7eb, never mind\nthe \"<branch>~<n>\" syntax Git uses to refer to n-th ancestor of\ncurrent tip of given branch.  Besides with nonlinear history with\nrevision numbers such as 12678 and 12687 you know that 12678 is older\nthan 12687 if and only if 12678 and 12687 are on the same line of\ndevelopment.\n\nThird, I think it would be possible to emulate mercurial behaviour\nwith using lightweight 'number' tags for numbering, created from a\nhook.\n\n> Integration into tools: We're using Trac currently, which also has a\n> nice binding to Mercurial (well, obviously easy to do as Mercurial is\n> written in Python, just as Trac itself), while the git support is in\n> development and looks quite alpha'ish. Do you plan to make it easier to\n> integrate git with other tools by providing bindings to other languages,\n> or is this a low-priority issue?\n\nWell, I think that the problem with implementing bindings to other\nprogramming languages is that there is currently no such thing like\nthe Git library (well, there are beginnings of one).  This is caused\nby the fact that originally git commands were written in run-once\nphilosophy, and e.g. rely on operating system to do the cleanups.\n\nSo far bindings to other languages either call Git commands (like\nGit.pm Perl interface from Git, or JavaGit), or are native Git\n(re)implementations relying not on stable API, but on stable\nrepository format (JGit for Java, Dulwich for Python, partially Grit\nfor Ruby).  \n\nThe emphasisis in Git was (and is) for it to be *scriptable*, rather\nthan extensible through plugins.\n\n\nBTW. the fact that JGit is reimplementation allows it to be use\ndifferent license than Git itself; license which makes JGit and EGit\nto be license-compatibile with Eclipse, and allow to distribute EGit\nas full Eclipse project.\n\n> \n> So far, my key arguments are that git is more robust (more projects\n> using it, larger developer base), of course git's excellent performance\n> and the much better support for SVN, which is important for us as we can\n> slowly migrate from SVN->Git, while hgmercurial is still in the making\n> (and Python's SVN->Hg switch is for instance waiting for it).\n\nhgmercurial? or hgsubversion?\n\nThere is also fact that git has superior support for multi-branch\ndevelopment, which I think is the workflow most suited for distributed\ndevelopment.\n\n-- \nJakub Narebski\nPoland\nShadeHawk on #git\n"},{"id":"123966","messageId":"86iqf2r5ch.fsf@blue.stonehenge.com","threadId":"21071","inReplyTo":"fabb9a1e0909281433l461086e3k93a138ad4b9b86c6@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Randal L. Schwartz","fromEmail":"merlyn@stonehenge.com","sentAt":"2009-09-28T23:56:30Z","receivedAt":"2009-09-28T23:56:30Z","isPatch":false,"sender":{"key":"merlyn@stonehenge.com","avatar":"https://gravatar.com/avatar/dc528d210743ff0333e6213f9ee7b33b23f1b7bc1f3c5a8c2d819074ecd7ab19?d=mp&s=160"},"body":">>>>> \"Sverre\" == Sverre Rabbelier <srabbelier@gmail.com> writes:\n\nSverre> Whow, it _does_ look a lot like Google Code, I doubt it's the same\nSverre> code as I don't think Google Code's verison is open source, pretty\nSverre> good copy either way.\n\nI gotta get these guys on FLOSS Weekly.  Is anyone here a member of\nthe team?\n\n-- \nRandal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095\n<merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>\nSmalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc.\nSee http://methodsandmessages.vox.com/ for Smalltalk and Seaside discussion\n"},{"id":"123967","messageId":"fabb9a1e0909281701j2d04a26dk43048133e85cd495@mail.gmail.com","threadId":"21071","inReplyTo":"86iqf2r5ch.fsf@blue.stonehenge.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Sverre Rabbelier","fromEmail":"srabbelier@gmail.com","sentAt":"2009-09-29T00:01:58Z","receivedAt":"2009-09-29T00:01:58Z","isPatch":false,"sender":{"key":"srabbelier@gmail.com","avatar":"https://avatars.githubusercontent.com/u/3098?v=4"},"body":"Heya,\n\nOn Tue, Sep 29, 2009 at 01:56, Randal L. Schwartz <merlyn@stonehenge.com> wrote:\n> I gotta get these guys on FLOSS Weekly.  Is anyone here a member of\n> the team?\n\nThere is of course the possiblity that the codesite team liked their\ndesign so much that they based theirs off of the Indefero thing :P.\n\n-- \nCheers,\n\nSverre Rabbelier\n"},{"id":"123968","messageId":"m3y6nya8vo.fsf@localhost.localdomain","threadId":"21071","inReplyTo":"m33a66br69.fsf@localhost.localdomain","subject":"Re: Deciding between Git/Mercurial","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2009-09-29T00:32:24Z","receivedAt":"2009-09-29T00:32:24Z","isPatch":false,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"Jakub Narebski <jnareb@gmail.com> writes:\n\n> Anteru <newsgroups@catchall.shelter13.net> writes:\n> \n> > I'm currently evaluating DVCS for a project, and we're at a point where\n> > it comes down to either Mercurial or Git. Right now, I'm advocating for\n> > Git, while my co-workers like Mercurial, so I'd like to provide some\n> > good arguments in favor of git. Unfortunately, I'm not a git expert, so\n> > I hope I can get some help here ...\n[...]\n\n> > So far, my key arguments are that git is more robust (more projects\n> > using it, larger developer base), of course git's excellent performance\n> > and the much better support for SVN, which is important for us as we can\n> > slowly migrate from SVN->Git, while hgmercurial is still in the making\n> > (and Python's SVN->Hg switch is for instance waiting for it).\n> \n> hgmercurial? or hgsubversion?\n> \n> There is also fact that git has superior support for multi-branch\n> development, which I think is the workflow most suited for distributed\n> development.\n\nSee also http://whygitisbetterthanx.com/#hg\n\n-- \nJakub Narebski\nPoland\nShadeHawk on #git\n"},{"id":"123969","messageId":"4AC1691D.5050600@gnu.org","threadId":"21071","inReplyTo":"h9nlhj$heq$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Paolo Bonzini","fromEmail":"bonzini@gnu.org","sentAt":"2009-09-29T01:55:41Z","receivedAt":"2009-09-29T01:55:41Z","isPatch":false,"sender":{"key":"bonzini@gnu.org","avatar":"https://avatars.githubusercontent.com/u/42082?v=4"},"body":"On 09/27/2009 02:24 PM, Anteru wrote:\n> What's\n> the rationale behind this decision for git, and is it possible to\n> emulate Mercurial's behavior somehow?\n\nWhile not exactly the same thing, 'git describe' is very helpful in \ncomparing versions (if you know that one is an ancestor of the other).\n\nPaolo\n"},{"id":"123972","messageId":"h9s9ll$kqb$1@ger.gmane.org","threadId":"21071","inReplyTo":"m33a66br69.fsf@localhost.localdomain","subject":"Re: Deciding between Git/Mercurial","fromName":"Anteru","fromEmail":"newsgroups@catchall.shelter13.net","sentAt":"2009-09-29T06:32:23Z","receivedAt":"2009-09-29T06:32:23Z","isPatch":false,"sender":{"key":"newsgroups@catchall.shelter13.net","avatar":null},"body":"> First, you have to remember that this 'number of commit' thingy is\n> *local* to your repository, so you cannot use commit numbers to\n> communicate with other developers.  This is inherent and unavoidable\nAh cool, thanks for clarifying this.\n\n>> So far, my key arguments are that git is more robust (more projects\n>> using it, larger developer base), of course git's excellent performance\n>> and the much better support for SVN, which is important for us as we can\n>> slowly migrate from SVN->Git, while hgmercurial is still in the making\n>> (and Python's SVN->Hg switch is for instance waiting for it).\n> \n> hgmercurial? or hgsubversion?\nhgsubversion of course, which is supposed to be what git-svn is already.\nAt the moment, I already use git with our SVN server, so I can show some\nof the advantages (for instance, renaming works much better than with\nSVN itself :) ), and I guess it also makes the migration easier as\neveryone can try with Git locally and we switch from SVN to Git once\neveryone has switched locally.\n\nThanks for all the input so far!\n\nCheers,\n  Anteru\n"},{"id":"123975","messageId":"e2b179460909290044q25c4b68fs3797764ae09ef2cb@mail.gmail.com","threadId":"21071","inReplyTo":"86iqf2r5ch.fsf@blue.stonehenge.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Mike Ralphson","fromEmail":"mike.ralphson@gmail.com","sentAt":"2009-09-29T07:44:58Z","receivedAt":"2009-09-29T07:44:58Z","isPatch":false,"sender":{"key":"mike.ralphson@gmail.com","avatar":"https://avatars.githubusercontent.com/u/21603?v=4"},"body":"2009/9/29 Randal L. Schwartz <merlyn@stonehenge.com>:\n>>>>>> \"Sverre\" == Sverre Rabbelier <srabbelier@gmail.com> writes:\n>\n> Sverre> Whow, it _does_ look a lot like Google Code, I doubt it's the same\n> Sverre> code as I don't think Google Code's verison is open source, pretty\n> Sverre> good copy either way.\n>\n> I gotta get these guys on FLOSS Weekly.  Is anyone here a member of\n> the team?\n\nNot a member of the team, just a user (and bug reporter!), but I\nbelieve Indefero is almost all the work of one pretty amazing guy, Dr\nLoïc d'Anterroches, cc'd above.\n\nMike\n"},{"id":"123976","messageId":"vpqljjykvpf.fsf@bauges.imag.fr","threadId":"21071","inReplyTo":"fabb9a1e0909281433l461086e3k93a138ad4b9b86c6@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Matthieu Moy","fromEmail":"matthieu.moy@grenoble-inp.fr","sentAt":"2009-09-29T08:21:16Z","receivedAt":"2009-09-29T08:21:16Z","isPatch":false,"sender":{"key":"matthieu.moy@grenoble-inp.fr","avatar":"https://gravatar.com/avatar/72c8a2705971a25dfaff23cece15130d405685845d911aedd5667ace277f3fc5?d=mp&s=160"},"body":"Sverre Rabbelier <srabbelier@gmail.com> writes:\n\n> Heya,\n>\n> On Mon, Sep 28, 2009 at 23:09, Steven Noonan <steven@uplinklabs.net> wrote:\n>> The interface looks very similar to Google Code's. I wonder, is this\n>> the same thing that Google is using, or is it just mimicking the\n>> interface?\n>\n> Whow, it _does_ look a lot like Google Code, I doubt it's the same\n> code as I don't think Google Code's verison is open source, pretty\n> good copy either way.\n\nIndefero is a clone of Google code.\n\n  http://www.google.com/search?q=indefero+clone+google+code\n\n(most links are in French, but this is what they say)\n\n-- \nMatthieu Moy\nhttp://www-verimag.imag.fr/~moy/\n"},{"id":"123977","messageId":"fabb9a1e0909290122p65b01a5bh619b025852857110@mail.gmail.com","threadId":"21071","inReplyTo":"vpqljjykvpf.fsf@bauges.imag.fr","subject":"Re: Deciding between Git/Mercurial","fromName":"Sverre Rabbelier","fromEmail":"srabbelier@gmail.com","sentAt":"2009-09-29T08:22:45Z","receivedAt":"2009-09-29T08:22:45Z","isPatch":false,"sender":{"key":"srabbelier@gmail.com","avatar":"https://avatars.githubusercontent.com/u/3098?v=4"},"body":"Heya,\n\nOn Tue, Sep 29, 2009 at 10:21, Matthieu Moy\n<Matthieu.Moy@grenoble-inp.fr> wrote:\n>  http://www.google.com/search?q=indefero+clone+google+code\n>\n> (most links are in French, but this is what they say)\n\nMight I suggest for those that are no masters of the french language:\n\nhttp://translate.google.com/translate_s?hl=en&clss=&q=indefero+clone+google+code&sl=en&tl=fr\n\n\n-- \nCheers,\n\nSverre Rabbelier\n"},{"id":"123978","messageId":"9accb4400909290144t1363b5c6t8886bfa01e486c94@mail.gmail.com","threadId":"21071","inReplyTo":"h9nlhj$heq$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Daniele Segato","fromEmail":"daniele.bilug@gmail.com","sentAt":"2009-09-29T08:44:19Z","receivedAt":"2009-09-29T08:44:19Z","isPatch":false,"sender":{"key":"daniele.bilug@gmail.com","avatar":null},"body":"On Sun, Sep 27, 2009 at 2:24 PM, Anteru\n<newsgroups@catchall.shelter13.net> wrote:\n> I'm currently evaluating DVCS for a project, and we're at a point where\n> it comes down to either Mercurial or Git. Right now, I'm advocating for\n> Git, while my co-workers like Mercurial, so I'd like to provide some\n> good arguments in favor of git. Unfortunately, I'm not a git expert, so\n> I hope I can get some help here ...\n>\n> First of all, what's the matter with git and Windows, is there some\n> long-term commitment to make git work on Windows as well as on Linux?\n> I'm using msysgit on Windows, and personally I'm happy with it, but my\n> co-workers constantly nag that Mercurial has superior portability ...\n\n\nCan I propose to make this discussion cross-mailing list adding the hg\nmailing list to the CC?\nI think it would be a good discussion if we don't end up flaming.\nLet me know what you think about it\n\n\nabout the Windows+Git compatibility, you may consider TortoiseGit too\nfor the not-CLI-oriented guys; I've seen it a while ago and it seems\npettry well integrated with windows\n\n\n> Mercurial's revision number system: With git, I get an SHA1 hash for\n> every commit, but it's not possible to see whether Hash1 is newer than\n> Hash2, while Mecurial also adds a running number to each commit. What's\n> the rationale behind this decision for git, and is it possible to\n> emulate Mercurial's behavior somehow?\n\n\nIf you tag a commit then you should be able to see how many commits\nthere are from that one issuing a git describe\n(found on the internet)\ngit commit -m'Commit One.'\ngit tag -a -m'Tag One.' 1.2.3\ngit describe    # => 1.2.3\ngit commit -m'Commit Two.'\ngit describe    # => 1.2.3-1-gaac161d\ngit commit -m'Commit Three.'\ngit describe    # => 1.2.3-2-g462715d\ngit tag -a -m'Tag Two.' 2.0.0\ngit describe    # => 2.0.0\n\n\n> So far, my key arguments are that git is more robust (more projects\n> using it, larger developer base), of course git's excellent performance\n> and the much better support for SVN, which is important for us as we can\n> slowly migrate from SVN->Git, while hgmercurial is still in the making\n> (and Python's SVN->Hg switch is for instance waiting for it).\n"},{"id":"123979","messageId":"c94f8e120909290154y5edc666ap22d261e7b4201a89@mail.gmail.com","threadId":"21071","inReplyTo":"9accb4400909290144t1363b5c6t8886bfa01e486c94@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Dilip M","fromEmail":"dilipm79@gmail.com","sentAt":"2009-09-29T08:54:33Z","receivedAt":"2009-09-29T08:54:33Z","isPatch":false,"sender":{"key":"dilipm79@gmail.com","avatar":"https://gravatar.com/avatar/9417e308513ce9251de2802a026c72eb164e6c9b9d7143a3ee13f6ed0c4d1bd5?d=mp&s=160"},"body":"On Tue, Sep 29, 2009 at 2:14 PM, Daniele Segato <daniele.bilug@gmail.com> wrote:\n> Can I propose to make this discussion cross-mailing list adding the hg\n> mailing list to the CC?  I think it would be a good discussion if we don't\n> end up flaming.  Let me know what you think about it\n\nWe will probably end in flames. Its same as comparing Vim and Emacs, Python\nand Perl...\n\n...this comparison is all ver web. Checkout!\n\nhttp://importantshock.wordpress.com/2008/08/07/git-vs-mercurial/\n\nMy *personnel*  opinion is, If it is for project _only_ on UNIX, than GIT and\nrepo tool from Google will be killing combination.\n\nIf project is on both Windows & UNIX (But consider where do you compile your\ncode), than hg doesn't have matching!\n\n\n\n-- \nDilip\n"},{"id":"124011","messageId":"ee2a733e0909291144g4b99ab7ay9e63bfac935013aa@mail.gmail.com","threadId":"21071","inReplyTo":"m33a66br69.fsf@localhost.localdomain","subject":"Re: Deciding between Git/Mercurial","fromName":"Leo Razoumov","fromEmail":"slonik.az@gmail.com","sentAt":"2009-09-29T18:44:40Z","receivedAt":"2009-09-29T18:44:40Z","isPatch":false,"sender":{"key":"slonik.az@gmail.com","avatar":null},"body":"On 2009-09-28, Jakub Narebski <jnareb@gmail.com> wrote:\n> [..snip..]\n>  Besides with nonlinear history with\n>  revision numbers such as 12678 and 12687 you know that 12678 is older\n>  than 12687 if and only if 12678 and 12687 are on the same line of\n>  development.\n>\n\nThe statement above is incorrect!! In a Mercurial repo local revision\nnumbers are strictly ordered in commit time. 12678 < 12687 means that\n12678 was committed prior to 12687. But these two commits could belong\nto two completely unrelated lines of development.\n\n--Leo--\n"},{"id":"124013","messageId":"200909292058.53045.jnareb@gmail.com","threadId":"21071","inReplyTo":"ee2a733e0909291144g4b99ab7ay9e63bfac935013aa@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2009-09-29T18:58:50Z","receivedAt":"2009-09-29T18:58:50Z","isPatch":false,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"On Tue, 29 Sep 2009, Leo Razoumov wrote:\n> On 2009-09-28, Jakub Narebski <jnareb@gmail.com> wrote:\n> > [..snip..]\n> >  Besides with nonlinear history with\n> >  revision numbers such as 12678 and 12687 you know that 12678 is older\n> >  than 12687 if and only if 12678 and 12687 are on the same line of\n> >  development.\n> \n> The statement above is incorrect!! In a Mercurial repo local revision\n> numbers are strictly ordered in commit time. 12678 < 12687 means that\n> 12678 was committed prior to 12687. But these two commits could belong\n> to two completely unrelated lines of development.\n\nThis is impossible with distributed development.  If the second branch\ncomes from other repository, with commits _created_ (in that repository)\nearlier than commits in current repository, but commits in first\nbranch (from current repository) were created earlier than _fetching_\nthose commits in second branch:\n\n  .---.---.---.---x---1---2---3---M---.    \n                   \\             /\n                    \\-A---B---C-/             <-- from repository B\n\n\nEither you would have to change commits numbers, and therefore they would\nbe not stable, or you would have to change commit time to mean 'time this\ncommit got into current repository', which would kill performance for sure.\n\n-- \nJakub Narebski\nPoland\n"},{"id":"124014","messageId":"vpqk4zhplty.fsf@bauges.imag.fr","threadId":"21071","inReplyTo":"200909292058.53045.jnareb@gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Matthieu Moy","fromEmail":"matthieu.moy@grenoble-inp.fr","sentAt":"2009-09-29T19:55:37Z","receivedAt":"2009-09-29T19:55:37Z","isPatch":false,"sender":{"key":"matthieu.moy@grenoble-inp.fr","avatar":"https://gravatar.com/avatar/72c8a2705971a25dfaff23cece15130d405685845d911aedd5667ace277f3fc5?d=mp&s=160"},"body":"Jakub Narebski <jnareb@gmail.com> writes:\n\n> On Tue, 29 Sep 2009, Leo Razoumov wrote:\n>> On 2009-09-28, Jakub Narebski <jnareb@gmail.com> wrote:\n>> > [..snip..]\n>> >  Besides with nonlinear history with\n>> >  revision numbers such as 12678 and 12687 you know that 12678 is older\n>> >  than 12687 if and only if 12678 and 12687 are on the same line of\n>> >  development.\n>> \n>> The statement above is incorrect!! In a Mercurial repo local revision\n>> numbers are strictly ordered in commit time. 12678 < 12687 means that\n>> 12678 was committed prior to 12687. But these two commits could belong\n>> to two completely unrelated lines of development.\n>\n> This is impossible with distributed development.\n\nYes, the accurate statement is (I think): \"In a Mercurial repo local\nrevision numbers are strictly ordered according _the time when the_\n_commit entered the repository_\" (i.e. the time you did a merge, not\nthe time the other guy did the commit).\n\nJust tested:\n\n$ hg log\nchangeset:   3:4d6db21df0cd\ntag:         tip\nparent:      1:31f8406ae59c\nparent:      2:33bfb84a5113\nuser:        Matthieu Moy <Matthieu.Moy@imag.fr>\ndate:        Tue Sep 29 21:54:25 2009 +0200\nsummary:     merge\n\nchangeset:   2:33bfb84a5113\nparent:      0:a508b050e5ae\nuser:        Matthieu Moy <Matthieu.Moy@imag.fr>\ndate:        Tue Sep 29 21:54:02 2009 +0200\nsummary:     in branch bar\n\nchangeset:   1:31f8406ae59c\nuser:        Matthieu Moy <Matthieu.Moy@imag.fr>\ndate:        Tue Sep 29 21:54:11 2009 +0200\nsummary:     in branch foo\n\nchangeset:   0:a508b050e5ae\nuser:        Matthieu Moy <Matthieu.Moy@imag.fr>\ndate:        Tue Sep 29 21:53:33 2009 +0200\nsummary:     init\n\nEither I have a time machine at home, or changesets 1 was not made\nbefore changeset 2.\n\n-- \nMatthieu Moy\nhttp://www-verimag.imag.fr/~moy/\n"},{"id":"124019","messageId":"ee2a733e0909291749s71801b29ufa827cab715d0abb@mail.gmail.com","threadId":"21071","inReplyTo":"200909292058.53045.jnareb@gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Leo Razoumov","fromEmail":"slonik.az@gmail.com","sentAt":"2009-09-30T00:49:52Z","receivedAt":"2009-09-30T00:49:52Z","isPatch":false,"sender":{"key":"slonik.az@gmail.com","avatar":null},"body":"On 2009-09-29, Jakub Narebski <jnareb@gmail.com> wrote:\n> On Tue, 29 Sep 2009, Leo Razoumov wrote:\n>  > On 2009-09-28, Jakub Narebski <jnareb@gmail.com> wrote:\n>  > > [..snip..]\n>  > >  Besides with nonlinear history with\n>  > >  revision numbers such as 12678 and 12687 you know that 12678 is older\n>  > >  than 12687 if and only if 12678 and 12687 are on the same line of\n>  > >  development.\n>  >\n>  > The statement above is incorrect!! In a Mercurial repo local revision\n>  > numbers are strictly ordered in commit time. 12678 < 12687 means that\n>  > 12678 was committed prior to 12687. But these two commits could belong\n>  > to two completely unrelated lines of development.\n>\n>\n> This is impossible with distributed development.  If the second branch\n>  comes from other repository, with commits _created_ (in that repository)\n>  earlier than commits in current repository, but commits in first\n>  branch (from current repository) were created earlier than _fetching_\n>  those commits in second branch:\n>\n>   .---.---.---.---x---1---2---3---M---.\n>                    \\             /\n>                     \\-A---B---C-/             <-- from repository B\n>\n>\n>  Either you would have to change commits numbers, and therefore they would\n>  be not stable, or you would have to change commit time to mean 'time this\n>  commit got into current repository', which would kill performance for sure.\n>\n\nJakub,\nin Mercurial sequential commit numbers are local to a repo and are not\nunique between the clones. Unique ID is SHA1 as in git. So mercurial\ncommit 127:aaf123453dfgdfgddd...\nmeans commit number 127 in this repo with SHA1 \"aaf123453dfgdfgddd...\"\nIn another clone commit 127 might mean completely different thing.\nSequential commit numbers are strictly for \"local convenience\".\n\n--Leo--\n"},{"id":"124020","messageId":"20090930062816.GA27901@atjola.homenet","threadId":"21071","inReplyTo":"ee2a733e0909291749s71801b29ufa827cab715d0abb@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Björn Steinbrink","fromEmail":"b.steinbrink@gmx.de","sentAt":"2009-09-30T06:28:16Z","receivedAt":"2009-09-30T06:28:16Z","isPatch":false,"sender":{"key":"b.steinbrink@gmx.de","avatar":"https://avatars.githubusercontent.com/u/230962?v=4"},"body":"On 2009.09.29 20:49:52 -0400, Leo Razoumov wrote:\n> On 2009-09-29, Jakub Narebski <jnareb@gmail.com> wrote:\n> > On Tue, 29 Sep 2009, Leo Razoumov wrote:\n> >  > On 2009-09-28, Jakub Narebski <jnareb@gmail.com> wrote:\n> >  > > [..snip..]\n> >  > >  Besides with nonlinear history with\n> >  > >  revision numbers such as 12678 and 12687 you know that 12678 is older\n> >  > >  than 12687 if and only if 12678 and 12687 are on the same line of\n> >  > >  development.\n> >  >\n> >  > The statement above is incorrect!! In a Mercurial repo local revision\n> >  > numbers are strictly ordered in commit time. 12678 < 12687 means that\n> >  > 12678 was committed prior to 12687. But these two commits could belong\n> >  > to two completely unrelated lines of development.\n> >\n> > This is impossible with distributed development.  If the second branch\n> >  comes from other repository, with commits _created_ (in that repository)\n> >  earlier than commits in current repository, but commits in first\n> >  branch (from current repository) were created earlier than _fetching_\n> >  those commits in second branch:\n> >\n> >   .---.---.---.---x---1---2---3---M---.\n> >                    \\             /\n> >                     \\-A---B---C-/             <-- from repository B\n> >\n> >\n> >  Either you would have to change commits numbers, and therefore they would\n> >  be not stable, or you would have to change commit time to mean 'time this\n> >  commit got into current repository', which would kill performance for sure.\n> >\n> \n> Jakub,\n> in Mercurial sequential commit numbers are local to a repo and are not\n> unique between the clones. Unique ID is SHA1 as in git. So mercurial\n> commit 127:aaf123453dfgdfgddd...\n> means commit number 127 in this repo with SHA1 \"aaf123453dfgdfgddd...\"\n> In another clone commit 127 might mean completely different thing.\n> Sequential commit numbers are strictly for \"local convenience\".\n\nTo quote his first mail:\n\tFirst, you have to remember that this 'number of commit' thingy\n\tis *local* to your repository, so you cannot use commit numbers\n\tto communicate with other developers.\n\nWith the above example, he has just shown that even with those local\ncommit numbers, you can't tell that commit X is older than commit Y just\nbecause X < Y.\n\nBjörn\n"},{"id":"124025","messageId":"4AC3222A.2040305@op5.se","threadId":"21071","inReplyTo":"ee2a733e0909291749s71801b29ufa827cab715d0abb@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Andreas Ericsson","fromEmail":"ae@op5.se","sentAt":"2009-09-30T09:17:30Z","receivedAt":"2009-09-30T09:17:30Z","isPatch":false,"sender":{"key":"ae@op5.se","avatar":"https://gravatar.com/avatar/426e89595c75a8f5252dd0c989e5fabe5bcac616e68557427ad9aef6b0ca342a?d=mp&s=160"},"body":"On 09/30/2009 02:49 AM, Leo Razoumov wrote:\n> On 2009-09-29, Jakub Narebski<jnareb@gmail.com>  wrote:\n>> On Tue, 29 Sep 2009, Leo Razoumov wrote:\n>>   >  On 2009-09-28, Jakub Narebski<jnareb@gmail.com>  wrote:\n>>   >  >  [..snip..]\n>>   >  >   Besides with nonlinear history with\n>>   >  >   revision numbers such as 12678 and 12687 you know that 12678 is older\n>>   >  >   than 12687 if and only if 12678 and 12687 are on the same line of\n>>   >  >   development.\n>>   >\n>>   >  The statement above is incorrect!! In a Mercurial repo local revision\n>>   >  numbers are strictly ordered in commit time. 12678<  12687 means that\n>>   >  12678 was committed prior to 12687. But these two commits could belong\n>>   >  to two completely unrelated lines of development.\n>>\n>>\n>> This is impossible with distributed development.  If the second branch\n>>   comes from other repository, with commits _created_ (in that repository)\n>>   earlier than commits in current repository, but commits in first\n>>   branch (from current repository) were created earlier than _fetching_\n>>   those commits in second branch:\n>>\n>>    .---.---.---.---x---1---2---3---M---.\n>>                     \\             /\n>>                      \\-A---B---C-/<-- from repository B\n>>\n>>\n>>   Either you would have to change commits numbers, and therefore they would\n>>   be not stable, or you would have to change commit time to mean 'time this\n>>   commit got into current repository', which would kill performance for sure.\n>>\n>\n> Jakub,\n> in Mercurial sequential commit numbers are local to a repo and are not\n> unique between the clones. Unique ID is SHA1 as in git. So mercurial\n> commit 127:aaf123453dfgdfgddd...\n> means commit number 127 in this repo with SHA1 \"aaf123453dfgdfgddd...\"\n> In another clone commit 127 might mean completely different thing.\n> Sequential commit numbers are strictly for \"local convenience\".\n>\n\nPersonally I much prefer the \"commit'ish-backward\" notation of git,\nwhere HEAD~4 means \"the commit 4 commits back from HEAD\".\n\nYou'd get awfully tired of writing the six-digit \"shorthand\" numbers\nof large projects fairly quickly, I imagine.\n\n-- \nAndreas Ericsson                   andreas.ericsson@op5.se\nOP5 AB                             www.op5.se\nTel: +46 8-230225                  Fax: +46 8-230231\n\nConsidering the successes of the wars on alcohol, poverty, drugs and\nterror, I think we should give some serious thought to declaring war\non peace.\n"},{"id":"124026","messageId":"4AC33C56.8060202@gmx.de","threadId":"21071","inReplyTo":"h9nlhj$heq$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Matthias Andree","fromEmail":"matthias.andree@gmx.de","sentAt":"2009-09-30T11:09:10Z","receivedAt":"2009-09-30T11:09:10Z","isPatch":false,"sender":{"key":"matthias.andree@gmx.de","avatar":null},"body":"Anteru schrieb:\n\n> First of all, what's the matter with git and Windows, is there some\n> long-term commitment to make git work on Windows as well as on Linux?\n> I'm using msysgit on Windows, and personally I'm happy with it, but my\n> co-workers constantly nag that Mercurial has superior portability ...\n\nThat tale is told all over, but that doesn't make it truer. I've never had\nissues getting a Cygwin version of git to work properly (haven't tried the\nmsysgit or jgit variants, never felt the need), and integration went smooth.\n\nWith Mercurial, getting it integrated with a Windows-native Emacs (Cygwin emacs\ndoesn't work for me but hangs on startup) was somewhat of an undertaking even\nwith Cygwin's bash (rather than cmdproxy) underneath Emacs. It boiled down to\nbuilding Mercurial with py2exe and create an installer and use the compiled\nhg.exe which I find starts rather slowly.\n\n> So far, my key arguments are that git is more robust (more projects\n> using it, larger developer base), of course git's excellent performance\n> and the much better support for SVN, which is important for us as we can\n> slowly migrate from SVN->Git, while hgmercurial is still in the making\n> (and Python's SVN->Hg switch is for instance waiting for it).\n\nYes, but beware of git-svn under Cygwin 1.5 - that works for svn+ssh:// URLs,\nbut https:// or file:// don't work well because the underdocumented gazillion of\ndependencies piece of sh.. called apr does stupid things WRT temporary files\nsince the Cygwin Subversion 1.6 days. Cygwin's Subversion 1.5 fared better.\n\nI'm not sure about msysgit or jgit projects, but for Cygwin you'll definitely\nwant to take the plunge and go for Cygwin 1.7 which is still in Beta (because\nthat allows you to remove a file and create a file with the same name, which\ndoesn't work with Cygwin 1.5).\n"},{"id":"124027","messageId":"200909301309.51283.jnareb@gmail.com","threadId":"21071","inReplyTo":"ee2a733e0909291749s71801b29ufa827cab715d0abb@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2009-09-30T11:09:50Z","receivedAt":"2009-09-30T11:09:50Z","isPatch":false,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"On Wed, 30 Sep 2009, Leo Razoumov wrote:\n> On 2009-09-29, Jakub Narebski <jnareb@gmail.com> wrote:\n>> On Tue, 29 Sep 2009, Leo Razoumov wrote:\n>>> On 2009-09-28, Jakub Narebski <jnareb@gmail.com> wrote:\n\n>>>> [..snip..]\n>>>>  Besides with nonlinear history with\n>>>>  revision numbers such as 12678 and 12687 you know that 12678 is older\n>>>>  than 12687 if and only if 12678 and 12687 are on the same line of\n>>>>  development.\n>>>\n>>> The statement above is incorrect!! In a Mercurial repo local revision\n>>> numbers are strictly ordered in commit time. 12678 < 12687 means that\n>>> 12678 was committed prior to 12687. But these two commits could belong\n>>> to two completely unrelated lines of development.\n>>\n>> This is impossible with distributed development.  If the second branch\n>>  comes from other repository, with commits _created_ (in that repository)\n>>  earlier than commits in current repository, but commits in first\n>>  branch (from current repository) were created earlier than _fetching_\n>>  those commits in second branch:\n>>\n>>   .---.---.---.---x---1---2---3---M---.\n>>                    \\             /\n>>                     \\-A---B---C-/             <-- from repository B\n>>\n>>\n>>  Either you would have to change commits numbers, and therefore they would\n>>  be not stable, or you would have to change commit time to mean 'time this\n>>  commit got into current repository', which would kill performance for sure.\n> \n> Jakub,\n> in Mercurial sequential commit numbers are local to a repo and are not\n> unique between the clones. Unique ID is SHA1 as in git. So mercurial\n> commit 127:aaf123453dfgdfgddd...\n> means commit number 127 in this repo with SHA1 \"aaf123453dfgdfgddd...\"\n> In another clone commit 127 might mean completely different thing.\n> Sequential commit numbers are strictly for \"local convenience\".\n\nYes, I know that in Mercurial commit numbers are local to repository,\nand even written about it (that sequential commit numbers are possible\nonly either as local identifiers, or in centralized workflow).\n\nThe issue I was writing about that sequential commit numbers cannot\ntell us if commit was earlier or later than some other commit based\nsolely on those commit numbers.  As other people in this thread wrote\nMercurial numbers commits not in order of commit creation, but in\norder of commit arriving (being present) in given repository.  So\ncommit numbers are not 'strictly ordered in commit time', but ordered\nin 'time commit got into current (local) repository'.\n\n\nI'd like also to note that this means that at some time Mercurial has\nto number all those commit it got on fetch / pull from remote repository.\nThis can be a lot of work... work which Git doesn't have to do (OTOH Git\ncreates index for packfile on local side after fetch...).\n\n-- \nJakub Narebski\nPoland\n"},{"id":"124028","messageId":"4AC33D84.406@gmx.de","threadId":"21071","inReplyTo":"alpine.DEB.1.00.0909281059180.4985@pacific.mpi-cbg.de","subject":"Re: Deciding between Git/Mercurial","fromName":"Matthias Andree","fromEmail":"matthias.andree@gmx.de","sentAt":"2009-09-30T11:14:12Z","receivedAt":"2009-09-30T11:14:12Z","isPatch":false,"sender":{"key":"matthias.andree@gmx.de","avatar":null},"body":"Johannes Schindelin schrieb:\n> Hi,\n> \n> I tried to refrain from commenting in this thread, because I do not want \n> to encourage people just to use msysGit and never even attempt to fix \n> their own issues.\n> \n> But I cannot let this go uncommented:\n> \n> On Mon, 28 Sep 2009, Felipe Contreras wrote:\n> \n>> IMO the key difference between hg and git is the storage model: hg \n>> stores deltas, while git stores snapshots. That would mean that certain \n>> operations are theoretically faster in git (e.g. checkout, diff) while \n>> others faster in hg, although with git's packed format I guess there's \n>> no operation faster in hg. This means that it doesn't matter how much \n>> hg's python code improves, or if they even re-write parts in C, they \n>> will never be able to match git's performance (unless they change the \n>> storage model, which essentially means changing the whole design -- \n>> won't happen).\n> \n> That is wrong.  \"git log -- <file>\" will always be slightly faster in \n> Mercurial, for all the reasons you mentioned.\n> \n> In addition, Mercurial _has_ parts re-written in C for performance, which \n> renders it not-exactly more portable if you ask me.  Last time I checked, \n> there was no way to compile a Python module with MinGW (or for that \n> matter, Python itself), but you needed MSVC...\n\nI have a shortish mercurial build script that works under Cygwin 1.5 and uses\nmsys, py2exe and iscc to build an installable Mercurial package, but I'm not\nsure what this boils down to WRT C-versions of \"modules\". Maybe these are lumped\ninto the resulting hg.exe, I never bothered to check the details.\n"},{"id":"124051","messageId":"alpine.LNX.2.00.0909301752450.14907@iabervon.org","threadId":"21071","inReplyTo":"4AC33C56.8060202@gmx.de","subject":"Re: Deciding between Git/Mercurial","fromName":"Daniel Barkalow","fromEmail":"barkalow@iabervon.org","sentAt":"2009-09-30T22:05:58Z","receivedAt":"2009-09-30T22:05:58Z","isPatch":false,"sender":{"key":"barkalow@iabervon.org","avatar":"https://avatars.githubusercontent.com/u/55364219?v=4"},"body":"On Wed, 30 Sep 2009, Matthias Andree wrote:\n\n> Anteru schrieb:\n> \n> > First of all, what's the matter with git and Windows, is there some\n> > long-term commitment to make git work on Windows as well as on Linux?\n> > I'm using msysgit on Windows, and personally I'm happy with it, but my\n> > co-workers constantly nag that Mercurial has superior portability ...\n> \n> That tale is told all over, but that doesn't make it truer. I've never had\n> issues getting a Cygwin version of git to work properly (haven't tried the\n> msysgit or jgit variants, never felt the need), and integration went smooth.\n\nGit works fine under Windows for people who use Cygwin. Portability to \nWindows is more about working for users who don't use a shell of any sort \nor the \"Run...\" dialog. I don't know how Mercurial does on that metric, \nanyway, but it's a lot more meaningful that the question of whether the \nsoftware works in your POSIX environment when the underlying kernel is not \nvery suitable.\n\n\t-Daniel\n*This .sig left intentionally blank*\n"},{"id":"125672","messageId":"c94f8e120910211938v3cc7991en3c385fc2f98b28a3@mail.gmail.com","threadId":"21071","inReplyTo":"h9nlhj$heq$1@ger.gmane.org","subject":"Re: Deciding between Git/Mercurial","fromName":"Dilip M","fromEmail":"dilipm79@gmail.com","sentAt":"2009-10-22T02:38:15Z","receivedAt":"2009-10-22T02:38:15Z","isPatch":false,"sender":{"key":"dilipm79@gmail.com","avatar":"https://gravatar.com/avatar/9417e308513ce9251de2802a026c72eb164e6c9b9d7143a3ee13f6ed0c4d1bd5?d=mp&s=160"},"body":"Hi Anteru,\n\nOn Sun, Sep 27, 2009 at 5:54 PM, Anteru  wrote:\n\n..snip..\n\n> So far, my key arguments are that git is more robust (more projects using\n> it, larger developer base), of course git's excellent performance and the\n> much better support for SVN, which is important for us as we can slowly\n> migrate from SVN->Git, while hgmercurial is still in the making (and\n> Python's SVN->Hg switch is for instance waiting for it).\n\nSo finally which you choosed? Just curious?\n\n\n\n-- \nDilip\n"},{"id":"125680","messageId":"4AE000B7.4090708@shelter13.net","threadId":"21071","inReplyTo":"c94f8e120910211938v3cc7991en3c385fc2f98b28a3@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Anteru","fromEmail":"anteru@shelter13.net","sentAt":"2009-10-22T06:50:31Z","receivedAt":"2009-10-22T06:50:31Z","isPatch":false,"sender":{"key":"anteru@shelter13.net","avatar":null},"body":"Dilip M schrieb:\n> Hi Anteru,\n> \n> On Sun, Sep 27, 2009 at 5:54 PM, Anteru  wrote:\n> \n> ..snip..\n> \n>> So far, my key arguments are that git is more robust (more projects using\n>> it, larger developer base), of course git's excellent performance and the\n>> much better support for SVN, which is important for us as we can slowly\n>> migrate from SVN->Git, while hgmercurial is still in the making (and\n>> Python's SVN->Hg switch is for instance waiting for it).\n> \n> So finally which you choosed? Just curious?\n\nBzr, it has even better SVN interop, works the same across all\nplatforms, performance-wise, Bzr 2.x turned out to be more than\nsufficient and the UI tools are quite polished.\n\nThanks for all the comments on Git and Hg!\n\nCheers,\n  Anteru\n"},{"id":"125682","messageId":"c94f8e120910220012r6d53f759u374a69d41dc4a4db@mail.gmail.com","threadId":"21071","inReplyTo":"4AE000B7.4090708@shelter13.net","subject":"Re: Deciding between Git/Mercurial","fromName":"Dilip M","fromEmail":"dilipm79@gmail.com","sentAt":"2009-10-22T07:12:49Z","receivedAt":"2009-10-22T07:12:49Z","isPatch":false,"sender":{"key":"dilipm79@gmail.com","avatar":"https://gravatar.com/avatar/9417e308513ce9251de2802a026c72eb164e6c9b9d7143a3ee13f6ed0c4d1bd5?d=mp&s=160"},"body":"On Thu, Oct 22, 2009 at 12:20 PM, Anteru <Anteru@shelter13.net> wrote:\n\n> Bzr, it has even better SVN interop, works the same across all\n> platforms, performance-wise, Bzr 2.x turned out to be more than\n> sufficient and the UI tools are quite polished.\n>\n> Thanks for all the comments on Git and Hg!\n\nSurprised to know. I was expecting hg or GIT :)\n\nDo you mind to share the checks done / piloting done while choosing\nBzr over GIT or HG\n\nI bet, it is useful for many ppl in this list too.\n\n\n\n-- \nDilip\n"},{"id":"125683","messageId":"4AE00B45.5040900@shelter13.net","threadId":"21071","inReplyTo":"c94f8e120910220012r6d53f759u374a69d41dc4a4db@mail.gmail.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Anteru","fromEmail":"anteru@shelter13.net","sentAt":"2009-10-22T07:35:33Z","receivedAt":"2009-10-22T07:35:33Z","isPatch":false,"sender":{"key":"anteru@shelter13.net","avatar":null},"body":"Dilip M schrieb:\n> Surprised to know. I was expecting hg or GIT :)\nYeah, me too, actually, Bzr was no contender at first.\n\n> Do you mind to share the checks done / piloting done while choosing\n> Bzr over GIT or HG\n> \n> I bet, it is useful for many ppl in this list too.\n\nI'm going to blog about this, in the hope that it will help more people\nwho want to switch away from SVN. I'm not so sure whether sending it\nhere will help, because in order to be fair, I would have to send the\nsame to the Bzr and Hg mailing lists, and this is a sure recipe for a\nflame-war :)\n\nCheers,\n  Anteru\n"},{"id":"125684","messageId":"46a038f90910220101h4f3ecf22x6923ac41e8b6d4f9@mail.gmail.com","threadId":"21071","inReplyTo":"200909272001.48180.robin.rosenberg.lists@dewire.com","subject":"Re: Deciding between Git/Mercurial","fromName":"Martin Langhoff","fromEmail":"martin.langhoff@gmail.com","sentAt":"2009-10-22T08:01:25Z","receivedAt":"2009-10-22T08:01:25Z","isPatch":false,"sender":{"key":"martin.langhoff@gmail.com","avatar":"https://gravatar.com/avatar/1e3f311b6c4c15836501901ca58f8c0b0667246488084ba524d8bc9867e22fd9?d=mp&s=160"},"body":"On Sun, Sep 27, 2009 at 8:01 PM, Robin Rosenberg\n<robin.rosenberg.lists@dewire.com> wrote:\n> söndag 27 september 2009 14:24:32 skrev Anteru <newsgroups@catchall.shelter13.net>:\n>> Mercurial's revision number system: With git, I get an SHA1 hash for\n>> every commit, but it's not possible to see whether Hash1 is newer than\n>> Hash2, while Mecurial also adds a running number to each commit. What's\n>\n> But those numbers cannot be communicated since they are local to your\n> clone.\n\nYou can use git-describe, which will look for the latest tag, and make\na combo of latest tag, commits since the tag, short form of sha1. So\nyou get \"v1.6.3-33-g1234\" - 33 commits after 1.6.3. Works very well to\nintegrate in versioning. The git project itself uses it in the\nMakefile to set the versions, same as the kernel folk do -- I use it\nto version even RPM/DEBs.\n\nhth,\n\n\n\nm\n-- \n martin.langhoff@gmail.com\n martin@laptop.org -- School Server Architect\n - ask interesting questions\n - don't get distracted with shiny stuff  - working code first\n - http://wiki.laptop.org/go/User:Martinlanghoff\n"}]}