You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Peter Horlock <pe...@googlemail.com> on 2011/07/04 13:27:51 UTC

Git or Mercurial

Hi!

We are planning to move from SVN to either GIT or Mercurial.
What would you recommend using?
Which has the better Maven / Eclipse / Sonar Support?

Thanks,

Peter

Re: Git or Mercurial

Posted by Freddy Mallet <fr...@gmail.com>.
On Sonar side :

+1 for Git (pretty well tested)
+0 for Mercurial (known open issue with the Sonar SCM Activity plugin :
http://jira.codehaus.org/browse/SONARPLUGINS-1157)

----------------------------------------
Freddy Mallet
www.SonarSource.org
www.SonarSource.com
----------------------------------------


On Mon, Jul 4, 2011 at 1:51 PM, Stephen Connolly <
stephen.alan.connolly@gmail.com> wrote:

> Git
>
> On 4 July 2011 12:27, Peter Horlock <pe...@googlemail.com> wrote:
> > Hi!
> >
> > We are planning to move from SVN to either GIT or Mercurial.
> > What would you recommend using?
> > Which has the better Maven / Eclipse / Sonar Support?
> >
> > Thanks,
> >
> > Peter
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

Re: Git or Mercurial

Posted by Stephen Connolly <st...@gmail.com>.
Yes, but git gets more love ;-)

On 4 July 2011 14:07, Olivier Lamy <ol...@apache.org> wrote:
> Mercurial support works fine too :-) (at least for Apache Maven stack : no
> idea for eclipse )
>
> --
> Olivier
> Le 4 juil. 2011 13:52, "Stephen Connolly" <st...@gmail.com>
> a écrit :
>> Git
>>
>> On 4 July 2011 12:27, Peter Horlock <pe...@googlemail.com> wrote:
>>> Hi!
>>>
>>> We are planning to move from SVN to either GIT or Mercurial.
>>> What would you recommend using?
>>> Which has the better Maven / Eclipse / Sonar Support?
>>>
>>> Thanks,
>>>
>>> Peter
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>> For additional commands, e-mail: users-help@maven.apache.org
>>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Olivier Lamy <ol...@apache.org>.
Mercurial support works fine too :-) (at least for Apache Maven stack : no
idea for eclipse )

--
Olivier
Le 4 juil. 2011 13:52, "Stephen Connolly" <st...@gmail.com>
a écrit :
> Git
>
> On 4 July 2011 12:27, Peter Horlock <pe...@googlemail.com> wrote:
>> Hi!
>>
>> We are planning to move from SVN to either GIT or Mercurial.
>> What would you recommend using?
>> Which has the better Maven / Eclipse / Sonar Support?
>>
>> Thanks,
>>
>> Peter
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>

Re: Git or Mercurial

Posted by Stephen Connolly <st...@gmail.com>.
Git

On 4 July 2011 12:27, Peter Horlock <pe...@googlemail.com> wrote:
> Hi!
>
> We are planning to move from SVN to either GIT or Mercurial.
> What would you recommend using?
> Which has the better Maven / Eclipse / Sonar Support?
>
> Thanks,
>
> Peter
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Sascha Vogt <sa...@gmail.com>.
Hi Ben,

Am 08.07.2011 04:44, schrieb Ben Caradoc-Davies:
> On 07/07/11 23:04, Sascha Vogt wrote:
>> Am 05.07.2011 10:46, schrieb Ben Caradoc-Davies:
>>> For large projects (>8000 source files) egit becomes painful: every time
>>> a file is saved egit insists on making Eclipse refresh everything, which
>>> results in multi-second hangs. None of the configurable refresh options
>>> appear to fix this. Pure pain. I had to stop using it.
>> When did you last test this? I think exactly this behaviour has greatly
>> improved in one of the last releases (either 1.0 or 0.12.x). At least I
>> saw some posts on the egit mailing list indicating that.
> 
> I was using egit 0.12.1 in Helios SR2 x86_64 under Linux. I uninstalled
> egit on 8 June.
*hm* An improvement for the decorators should have been committed to
master on January (according to my email archive), that should have made
it to 0.12.1 - Maybe that improvement wasn't enough for you.

>>> I am reliably informed that "egit is responsible for corrupting the udig
>>> repository last year - losing a lot of our project history". But I found
>>> it to work quite well for read-only use.
>> How can that happen? I mean, every dev should have a complete repository
>> locally. If one push corrupts the server just get one of the devs repos
>> and use that... Better than nothing. Anyway, some sort of backup should
>> be done as well (which is not that hard, since the repos are
>> self-contained). Anyway, this shouldn't be egits fault, but jgit, the
>> Java git implementation. Maybe you can share some more details how the
>> repo got corrupted.
> 
> http://lists.refractions.net/pipermail/udig-devel/2011-February/thread.html#19321
> 
> In particular, these:
> http://lists.refractions.net/pipermail/udig-devel/2011-February/019321.html
> http://lists.refractions.net/pipermail/udig-devel/2011-February/019329.html
> http://lists.refractions.net/pipermail/udig-devel/2011-February/019334.html
> http://lists.refractions.net/pipermail/udig-devel/2011-February/019346.html
> 
> The bug:
> http://help.github.com/fix-egit-corruption/

Thx a lot for the informations - luckily for me this was just after I
started using egit :)

Greetings
-Sascha-

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Ben Caradoc-Davies <Be...@csiro.au>.
On 07/07/11 23:04, Sascha Vogt wrote:
> Am 05.07.2011 10:46, schrieb Ben Caradoc-Davies:
>> For large projects (>8000 source files) egit becomes painful: every time
>> a file is saved egit insists on making Eclipse refresh everything, which
>> results in multi-second hangs. None of the configurable refresh options
>> appear to fix this. Pure pain. I had to stop using it.
> When did you last test this? I think exactly this behaviour has greatly
> improved in one of the last releases (either 1.0 or 0.12.x). At least I
> saw some posts on the egit mailing list indicating that.

I was using egit 0.12.1 in Helios SR2 x86_64 under Linux. I uninstalled 
egit on 8 June.

>> I am reliably informed that "egit is responsible for corrupting the udig
>> repository last year - losing a lot of our project history". But I found
>> it to work quite well for read-only use.
> How can that happen? I mean, every dev should have a complete repository
> locally. If one push corrupts the server just get one of the devs repos
> and use that... Better than nothing. Anyway, some sort of backup should
> be done as well (which is not that hard, since the repos are
> self-contained). Anyway, this shouldn't be egits fault, but jgit, the
> Java git implementation. Maybe you can share some more details how the
> repo got corrupted.

http://lists.refractions.net/pipermail/udig-devel/2011-February/thread.html#19321
In particular, these:
http://lists.refractions.net/pipermail/udig-devel/2011-February/019321.html
http://lists.refractions.net/pipermail/udig-devel/2011-February/019329.html
http://lists.refractions.net/pipermail/udig-devel/2011-February/019334.html
http://lists.refractions.net/pipermail/udig-devel/2011-February/019346.html

The bug:
http://help.github.com/fix-egit-corruption/

******

Due to a bug in the EGit/JGit implementation of the git push command, 
remote repos can become corrupted due to missing objects:

$ git fsck
broken link from  commit 5b90a930763c442f0fc3d819685083b4eda69f8e
               to  commit e1ea55d308b7808cb982f509c8dfa199ada4677e
missing commit e1ea55d308b7808cb982f509c8dfa199ada4677e

This can prevent cloning and fetching from the repo. The objects were 
never pushed to the remote repo, therefore support cannot recover the 
repo directly for the user. The only solution is for the user that 
pushed the commits to push them again from the command line.

This issue was fixed in EGit/JGit 0.8.4. We recommend updating and 
trying the following commands from EGit/JGit before resorting to the 
commandline.

[...]

******

-- 
Ben Caradoc-Davies <Be...@csiro.au>
Software Engineering Team Leader
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Sascha Vogt <sa...@gmail.com>.
Hi,

Am 05.07.2011 10:46, schrieb Ben Caradoc-Davies:
> For large projects (>8000 source files) egit becomes painful: every time
> a file is saved egit insists on making Eclipse refresh everything, which
> results in multi-second hangs. None of the configurable refresh options
> appear to fix this. Pure pain. I had to stop using it.
When did you last test this? I think exactly this behaviour has greatly
improved in one of the last releases (either 1.0 or 0.12.x). At least I
saw some posts on the egit mailing list indicating that.

> I am reliably informed that "egit is responsible for corrupting the udig
> repository last year - losing a lot of our project history". But I found
> it to work quite well for read-only use.
How can that happen? I mean, every dev should have a complete repository
locally. If one push corrupts the server just get one of the devs repos
and use that... Better than nothing. Anyway, some sort of backup should
be done as well (which is not that hard, since the repos are
self-contained). Anyway, this shouldn't be egits fault, but jgit, the
Java git implementation. Maybe you can share some more details how the
repo got corrupted.

Greetings
-Sascha-

PS: No, I'm not involved in the egit project nor do I know any of the
committers in person, just a happy user

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Ben Caradoc-Davies <Be...@csiro.au>.
Peter,

I use and recommend git. I have not used hg. I do not know anyone who 
uses hg.

For large projects (>8000 source files) egit becomes painful: every time 
a file is saved egit insists on making Eclipse refresh everything, which 
results in multi-second hangs. None of the configurable refresh options 
appear to fix this. Pure pain. I had to stop using it.

I am reliably informed that "egit is responsible for corrupting the udig 
repository last year - losing a lot of our project history". But I found 
it to work quite well for read-only use.

git command-line is rock solid. All the developers I know who have 
switched to a DVCS have switched to git. Interoperability with svn is 
excellent, including very smart recognition of renames, honoured on svn 
dcommit, resulting in preserved log history.

It will change your life.

Kind regards,
Ben.

On 04/07/11 19:27, Peter Horlock wrote:
> Hi!
>
> We are planning to move from SVN to either GIT or Mercurial.
> What would you recommend using?
> Which has the better Maven / Eclipse / Sonar Support?
>
> Thanks,
>
> Peter
>

-- 
Ben Caradoc-Davies <Be...@csiro.au>
Software Engineering Team Leader
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Stanimir Stamenkov <s7...@netscape.net>.
Wed, 6 Jul 2011 13:00:00 +0800, /Ben Caradoc-Davies/:

> Mercurial allegedly has some space-performance problems handling
> renames of directories, which end up doubling the space used in the
> repo. This might make the current implementation inefficient for
> large projects.
> http://evadeflow.com/2011/04/why-not-mercurial/

Mercurial 1.9 already includes support to improve the situation in 
that direction 
<http://mercurial.selenic.com/wiki/WhatsNew#Mercurial_1.9_.282011-07-01.29>:

> 1.1. Major features
>
>   * Experimental generaldelta storage scheme

-- 
Stanimir

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Ben Caradoc-Davies <Be...@csiro.au>.
Mercurial allegedly has some space-performance problems handling renames 
of directories, which end up doubling the space used in the repo. This 
might make the current implementation inefficient for large projects.
http://evadeflow.com/2011/04/why-not-mercurial/

On 05/07/11 19:12, Ricardo Gladwell wrote:
> I always thought that the general consensus on the git vs. mercurial
> debate as that mercurial is generally the better solution, especially
> when it comes to handling large files/repos, but that git is more
> established and therefore probably the better choice long-term.
>

-- 
Ben Caradoc-Davies <Be...@csiro.au>
Software Engineering Team Leader
CSIRO Earth Science and Resource Engineering
Australian Resources Research Centre

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Ricardo Gladwell <ri...@gmail.com>.
I always thought that the general consensus on the git vs. mercurial 
debate as that mercurial is generally the better solution, especially 
when it comes to handling large files/repos, but that git is more 
established and therefore probably the better choice long-term.

-- 
Ricardo Gladwell <ri...@gmail.com>
http://www.google.com/profiles/ricardo.gladwell
Twitter: @rgladwell - MSN: axonrg@gmail.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Mark Derricutt <ma...@talios.com>.
I had seen that in the release notes, about support for sparse checkouts.

However I still think that approach/model will lead to issues if/when
someone checkout the whole repo not knowing should should use sparse mode.

I'll have to try it out sometime and see just how well it works.

-- 
"Great artists are extremely selfish and arrogant things" — Steven Wilson,
Porcupine Tree


On Tue, Jul 5, 2011 at 10:46 PM, Olivier Lamy <ol...@apache.org> wrote:

> Note : a hack has been added in last release 2.2  for this use case.
>
> HTH,
> --
> Olivier Lamy
> http://twitter.com/olamy | http://www.linkedin.com/in/olamy
>
> [1] http://jira.codehaus.org/browse/MRELEASE-457
>
> 2011/7/5 Mark Derricutt <ma...@talios.com>:
> > Regardless of your choice between git or mercurial ( I vote git btw ) be
> > aware that due to git/mercurials tagging model, and how
> maven-release-plugin
> > works, maven works better with an artifact per repository model.
> >
> > So instead of having 3-4 artifacts in a single repo you'll need to split
> > them up ( unless you want a single version number for all things ).
> >
> > After we switched from subversion to git I wrote up a short post on what
> I
> > did:
> >
> >
> http://theoryinpractise.tumblr.com/post/1350252794/repository-migration-from-subversion-to-git
> >
> > Hope it helps.
> >
> > PS: git git git git git git git ;-)
> >
> > --
> > "Great artists are extremely selfish and arrogant things" — Steven
> Wilson,
> > Porcupine Tree
> >
> >
> > On Mon, Jul 4, 2011 at 11:27 PM, Peter Horlock <
> peter.horlock@googlemail.com
> >> wrote:
> >
> >> Hi!
> >>
> >> We are planning to move from SVN to either GIT or Mercurial.
> >> What would you recommend using?
> >> Which has the better Maven / Eclipse / Sonar Support?
> >>
> >> Thanks,
> >>
> >> Peter
> >>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

Re: Git or Mercurial

Posted by Olivier Lamy <ol...@apache.org>.
Note : a hack has been added in last release 2.2  for this use case.

HTH,
-- 
Olivier Lamy
http://twitter.com/olamy | http://www.linkedin.com/in/olamy

[1] http://jira.codehaus.org/browse/MRELEASE-457

2011/7/5 Mark Derricutt <ma...@talios.com>:
> Regardless of your choice between git or mercurial ( I vote git btw ) be
> aware that due to git/mercurials tagging model, and how maven-release-plugin
> works, maven works better with an artifact per repository model.
>
> So instead of having 3-4 artifacts in a single repo you'll need to split
> them up ( unless you want a single version number for all things ).
>
> After we switched from subversion to git I wrote up a short post on what I
> did:
>
> http://theoryinpractise.tumblr.com/post/1350252794/repository-migration-from-subversion-to-git
>
> Hope it helps.
>
> PS: git git git git git git git ;-)
>
> --
> "Great artists are extremely selfish and arrogant things" — Steven Wilson,
> Porcupine Tree
>
>
> On Mon, Jul 4, 2011 at 11:27 PM, Peter Horlock <peter.horlock@googlemail.com
>> wrote:
>
>> Hi!
>>
>> We are planning to move from SVN to either GIT or Mercurial.
>> What would you recommend using?
>> Which has the better Maven / Eclipse / Sonar Support?
>>
>> Thanks,
>>
>> Peter
>>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Git or Mercurial

Posted by Mark Derricutt <ma...@talios.com>.
Regardless of your choice between git or mercurial ( I vote git btw ) be
aware that due to git/mercurials tagging model, and how maven-release-plugin
works, maven works better with an artifact per repository model.

So instead of having 3-4 artifacts in a single repo you'll need to split
them up ( unless you want a single version number for all things ).

After we switched from subversion to git I wrote up a short post on what I
did:

http://theoryinpractise.tumblr.com/post/1350252794/repository-migration-from-subversion-to-git

Hope it helps.

PS: git git git git git git git ;-)

-- 
"Great artists are extremely selfish and arrogant things" — Steven Wilson,
Porcupine Tree


On Mon, Jul 4, 2011 at 11:27 PM, Peter Horlock <peter.horlock@googlemail.com
> wrote:

> Hi!
>
> We are planning to move from SVN to either GIT or Mercurial.
> What would you recommend using?
> Which has the better Maven / Eclipse / Sonar Support?
>
> Thanks,
>
> Peter
>