Version control systems

View: New views
20 Messages — Rating Filter:   Alert me  
< Prev | 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 | Next >

Version control systems

by Simon Marlow-7 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Following lots of useful discussion and evaluation of the available DVCSs
out there, the GHC team have made a decision: we're going to switch to git.

It came down to two things: the degree of support available, and
flexibility of the tools (git is much happier to let you modify the history
than Mercurial).  Speed ruled out bzr, and Windows support is less of an
issue: git appears to work reasonably well on Windows these days.

So we need a plan for switching.  We aim to make the switch shortly before
branching the repository for 6.10, which would mean we need to make the
switch early September, in around 5 weeks time.

Before then, the goal is to get the infrastructure to the point where we
can switch with minimum fuss.  We already have an up-to-date git mirror
thanks to Thomas Schilling:

    git clone http://darcs.haskell.org/ghc.git

(notice how fast that is :-)

darcs-all will be able to work with either the git repository or the darcs
repository (Max Bolingbroke is working on this, I believe).  We can switch
the automatic builds over to git as soon as darcs-all is working, and as
long as the git mirror is kept up to date (Thomas: is the mirror being
automatically updated now?).

I'd urge people to try out the git mirror and let us know how you get on.
We'll also work on updating the build documentation on the wiki and
creating a page of getting-started info on using git.

Cheers,
        Simon
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Thomas Schilling-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On 5 Aug 2008, at 11:23, Simon Marlow wrote:
> (Thomas: is the mirror being automatically updated now?).

No.  I have added the sync script as a post-apply hook, but it  
doesn't seem to work.  Maybe I can debug this with Igloo today.

/ Thomas


_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

PGP.sig (201 bytes) Download Attachment

Re: Version control systems

by Don Stewart-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

marlowsd:
> Following lots of useful discussion and evaluation of the available DVCSs
> out there, the GHC team have made a decision: we're going to switch to git.

Hooray, this will generate a lot of open source good will, and help make
GHC more accessible to the outside world.

Just see the comments here,

    http://www.reddit.com/comments/6v2nl/ghc_project_switches_to_git/

"Great news!"

"I'm trying to clone this now,"

If this means a few more eyes on the code, then that's all win.

-- Don
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Alex Dunlap :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Tue, Aug 5, 2008 at 2:23 AM, Simon Marlow <marlowsd@...> wrote:
> (notice how fast that is :-)

git clone has gone about 45 minutes so far without finishing...is that
an improvement over darcs?

Alex
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Simon Marlow-7 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Alexander Dunlap wrote:
> On Tue, Aug 5, 2008 at 2:23 AM, Simon Marlow <marlowsd@...> wrote:
>> (notice how fast that is :-)
>
> git clone has gone about 45 minutes so far without finishing...is that
> an improvement over darcs?

I think http is still bandwidth-throttled on darcs.haskell.org.  You should
  get better results cloning the github mirror:

  git://github.com/ghc-hq/ghc.git

Thomas Schilling set this up yesterday.

Cheers,
        Simon

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by david48 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Simon Marlow <marlowsd <at> gmail.com> writes:

Hello,

This is how I get on :

$ git clone http://darcs.haskell.org/ghc.git

ok, and fast !

$ cd ghc

$ sh boot

Looks like you're missing libraries/utils/hsc2hs.
Maybe you haven't done './darcs-all get'?

$ ./darcs-all get

cat: _darcs/prefs/defaultrepo: No such file or directory
Couldn't work out defaultrepo at ./darcs-all line 27.


Cheers,


_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Duncan Coutts :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Tue, 2008-08-05 at 22:12 -0700, Don Stewart wrote:
> marlowsd:
> > Following lots of useful discussion and evaluation of the available DVCSs
> > out there, the GHC team have made a decision: we're going to switch to git.
>
> Hooray, this will generate a lot of open source good will, and help make
> GHC more accessible to the outside world.

Heh, you still need darcs to build it, because all the libs are using
darcs, and that's not going to change any time soon.

> Just see the comments here,
>
>     http://www.reddit.com/comments/6v2nl/ghc_project_switches_to_git/
>
> "Great news!"
>
> "I'm trying to clone this now,"

Let's see what they say when they find out :-)

Duncan

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Max Bolingbroke-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

2008/8/6 david48 <dav.vire+haskell@...>:
> cat: _darcs/prefs/defaultrepo: No such file or directory
> Couldn't work out defaultrepo at ./darcs-all line 27.

You can't yet build from the Git repo, alas. I've added the necessary
patches and scripts (you need sync-all, not darcs-all) to
http://hackage.haskell.org/trac/ghc/wiki/DarcsConversion but they
haven't yet been commited to HEAD.

Cheers,
Max
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Max Bolingbroke-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

2008/8/6 Duncan Coutts <duncan.coutts@...>:

> On Tue, 2008-08-05 at 22:12 -0700, Don Stewart wrote:
>> marlowsd:
>> > Following lots of useful discussion and evaluation of the available DVCSs
>> > out there, the GHC team have made a decision: we're going to switch to git.
>>
>> Hooray, this will generate a lot of open source good will, and help make
>> GHC more accessible to the outside world.
>
> Heh, you still need darcs to build it, because all the libs are using
> darcs, and that's not going to change any time soon.

One thing that might be a good idea is setting up Git mirrors of the
libraries etc that we cannot convert to Git since other people depend
on them. This would give us nice integration with Gits submodule
support, allowing us to check out a consistent snapshot of the entire
tree (including the libraries, Cabal etc) at any point in time
straightforwardly. Of course, as a bonus you wouldn't have to install
Darcs to clone.

Cheers,
Max
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Samuel Tardieu :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

>>>>> "Simon" == Simon Marlow <marlowsd@...> writes:

Simon> We already have an up-to-date git mirror thanks to Thomas
Simon> Schilling:

Simon>    git clone http://darcs.haskell.org/ghc.git

Simon> (notice how fast that is :-)

It would be even much faster if you (Thomas?) setup a git server. It
is as easy as "touch git-daemon-export-ok" in the GIT repository and
launching "git-daemon /path/to/parent/of/git/repo" at boot time, as
shown by Chris Double at

  http://www.bluishcoder.co.nz/2007/09/how-to-publish-git-repository.html

Then the "git://" protocol can be used, which makes intelligent
decisions on what needs to be transferred.

 Sam
--
Samuel Tardieu -- sam@... -- http://www.rfc1149.net/

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Parent Message unknown Re: Version control systems

by Felix Martini :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

> and Windows support is less of an issue: git appears to work reasonably well on Windows these days.

Congratulations on the switch, but isn't the decision a bit premature?
I have read the log of last week's GHC meeting on IRC and nobody
seemed to know if Git runs well on Windows with a large project like
GHC. I also prefer Git to Darcs or Mercurial on Linux, but this rather
quick decision makes it look like Windows support of GHC is an
afterthought.

Regards,
Felix
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Duncan Coutts :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, 2008-08-06 at 11:31 +0100, Max Bolingbroke wrote:

> 2008/8/6 Duncan Coutts <duncan.coutts@...>:
> > On Tue, 2008-08-05 at 22:12 -0700, Don Stewart wrote:
> >> marlowsd:
> >> > Following lots of useful discussion and evaluation of the available DVCSs
> >> > out there, the GHC team have made a decision: we're going to switch to git.
> >>
> >> Hooray, this will generate a lot of open source good will, and help make
> >> GHC more accessible to the outside world.
> >
> > Heh, you still need darcs to build it, because all the libs are using
> > darcs, and that's not going to change any time soon.
>
> One thing that might be a good idea is setting up Git mirrors of the
> libraries etc that we cannot convert to Git since other people depend
> on them. This would give us nice integration with Gits submodule
> support, allowing us to check out a consistent snapshot of the entire
> tree (including the libraries, Cabal etc) at any point in time
> straightforwardly. Of course, as a bonus you wouldn't have to install
> Darcs to clone.

If that means I can continue to use darcs for Cabal development then I'm
happy.

Duncan

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Ian Lynagh :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, Aug 06, 2008 at 12:44:35PM +0200, Felix Martini wrote:
> > and Windows support is less of an issue: git appears to work reasonably well on Windows these days.
>
> Congratulations on the switch, but isn't the decision a bit premature?
> I have read the log of last week's GHC meeting on IRC and nobody
> seemed to know if Git runs well on Windows with a large project like
> GHC. I also prefer Git to Darcs or Mercurial on Linux, but this rather
> quick decision makes it look like Windows support of GHC is an
> afterthought.

I tried git on Windows and it seemed to basically work. If anyone finds
any problems with it, on Windows or otherwise, then this is the time to
shout, before we have actually made the move.


Thanks
Ian

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Simon Marlow-7 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Ian Lynagh wrote:

> On Wed, Aug 06, 2008 at 12:44:35PM +0200, Felix Martini wrote:
>>> and Windows support is less of an issue: git appears to work reasonably well on Windows these days.
>> Congratulations on the switch, but isn't the decision a bit premature?
>> I have read the log of last week's GHC meeting on IRC and nobody
>> seemed to know if Git runs well on Windows with a large project like
>> GHC. I also prefer Git to Darcs or Mercurial on Linux, but this rather
>> quick decision makes it look like Windows support of GHC is an
>> afterthought.
>
> I tried git on Windows and it seemed to basically work. If anyone finds
> any problems with it, on Windows or otherwise, then this is the time to
> shout, before we have actually made the move.

I also tried it out a bit, and didn't have any problems cloning
repositories on a local drive, network drive, or remotely.  I tried both
the cygwin git and the MSYS git.

Cheers,
        Simon
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Thomas Schilling-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On 6 Aug 2008, at 12:35, Samuel Tardieu wrote:

>>>>>> "Simon" == Simon Marlow <marlowsd@...> writes:
>
> Simon> We already have an up-to-date git mirror thanks to Thomas
> Simon> Schilling:
>
> Simon>    git clone http://darcs.haskell.org/ghc.git
>
> Simon> (notice how fast that is :-)
>
> It would be even much faster if you (Thomas?) setup a git server. It
> is as easy as "touch git-daemon-export-ok" in the GIT repository and
> launching "git-daemon /path/to/parent/of/git/repo" at boot time, as
> shown by Chris Double at
>
>   http://www.bluishcoder.co.nz/2007/09/how-to-publish-git- 
> repository.html
>
> Then the "git://" protocol can be used, which makes intelligent
> decisions on what needs to be transferred.
>
Thanks, I will look into it.  I need to talk to our admin anyway.

/ Thomas
--
My shadow / Change is coming. / Now is my time. / Listen to my muscle  
memory. / Contemplate what I've been clinging to. / Forty-six and two  
ahead of me.






_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

PGP.sig (201 bytes) Download Attachment

somewhat OT: maybe useful git script "git-test-merge"

by Marc Weber :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi @ll,

I'd like to tell you about a small script I've written to make life
easier with git:

git clone git://mawercer.de/git-test-merge
It remembers test merge setups so that you can merge different feature
branches by typing:

        $ gtm set setup1 branch1 remotes/branch2 branch3
        $ gtm update setup1
        $ gtm continue      # after resolving conflicts

To remove brances from the setup you have to edit .git/config

Additionally it uses a commit message warning about it beeing a test
merge only.

Unfortunately I don't know a nice way to share the git-rerere cache yet
which remembers conflict resolutions automatically.

It works best on orthogonal branches of course :)

Read about Linus complaint in man git-rerere to find out why I've
written this script

Sincerly Marc Weber
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Manuel M T Chakravarty :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Max Bolingbroke:

> 2008/8/6 Duncan Coutts <duncan.coutts@...>:
>> On Tue, 2008-08-05 at 22:12 -0700, Don Stewart wrote:
>>> marlowsd:
>>>> Following lots of useful discussion and evaluation of the  
>>>> available DVCSs
>>>> out there, the GHC team have made a decision: we're going to  
>>>> switch to git.
>>>
>>> Hooray, this will generate a lot of open source good will, and  
>>> help make
>>> GHC more accessible to the outside world.
>>
>> Heh, you still need darcs to build it, because all the libs are using
>> darcs, and that's not going to change any time soon.
>
> One thing that might be a good idea is setting up Git mirrors of the
> libraries etc that we cannot convert to Git since other people depend
> on them. This would give us nice integration with Gits submodule
> support, allowing us to check out a consistent snapshot of the entire
> tree (including the libraries, Cabal etc) at any point in time
> straightforwardly. Of course, as a bonus you wouldn't have to install
> Darcs to clone.

I seriously hope the plan is to move all *core* libraries (including  
GHC's cabal repo) etc over to git, too.  In other word, everything  
that you need to build the development version of GHC should come via  
git.  Having a mix of VCSs would be the worst option of all.

Manuel

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Ian Lynagh :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Fri, Aug 08, 2008 at 12:04:15PM +1000, Manuel M T Chakravarty wrote:
>
> I seriously hope the plan is to move all *core* libraries (including  
> GHC's cabal repo) etc over to git, too.  In other word, everything  
> that you need to build the development version of GHC should come via  
> git.  Having a mix of VCSs would be the worst option of all.

No, the plan is to move only the GHC and testsuite repos to git, as the
others are also used by hugs, nhc98, etc.

It would be possible to move GHC's Cabal repo over too, as that is
private to GHC, but given the other libraries will be using darcs anyway
I think it is simpler to keep all darcs repos using the same VCS.


Thanks
Ian

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Duncan Coutts :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Fri, 2008-08-08 at 14:03 +0100, Ian Lynagh wrote:

> On Fri, Aug 08, 2008 at 12:04:15PM +1000, Manuel M T Chakravarty wrote:
> >
> > I seriously hope the plan is to move all *core* libraries (including  
> > GHC's cabal repo) etc over to git, too.  In other word, everything  
> > that you need to build the development version of GHC should come via  
> > git.  Having a mix of VCSs would be the worst option of all.
>
> No, the plan is to move only the GHC and testsuite repos to git, as the
> others are also used by hugs, nhc98, etc.
>
> It would be possible to move GHC's Cabal repo over too, as that is
> private to GHC, but given the other libraries will be using darcs anyway
> I think it is simpler to keep all darcs repos using the same VCS.

If there's some way of having automated git mirrors of the upstream
darcs repos then that's might be convenient for people building ghc.
Asking the maintainers of all other libs to switch is a bit much
though.

Duncan

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Re: Version control systems

by Manuel M T Chakravarty :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Ian Lynagh:

> On Fri, Aug 08, 2008 at 12:04:15PM +1000, Manuel M T Chakravarty  
> wrote:
>>
>> I seriously hope the plan is to move all *core* libraries (including
>> GHC's cabal repo) etc over to git, too.  In other word, everything
>> that you need to build the development version of GHC should come via
>> git.  Having a mix of VCSs would be the worst option of all.
>
> No, the plan is to move only the GHC and testsuite repos to git, as  
> the
> others are also used by hugs, nhc98, etc.
>
> It would be possible to move GHC's Cabal repo over too, as that is
> private to GHC, but given the other libraries will be using darcs  
> anyway
> I think it is simpler to keep all darcs repos using the same VCS.

I think all *core* libraries must switch.  Seriously, requiring GHC  
developer to use a mix of two vcs during development is a Very Bad  
Idea.  Don was excited about getting more people to look at the source  
when it is in git (see the comments he posted from reddit).  By  
requiring two vcs you will get *less* people to look at the source.

This is not only to get the sources to hack them, but you effectively  
require developers to learn the commands for two vcs (when they are  
already reluctant to learn one).  For example, often enough somebody  
who changes something in GHC will modify the base package, too.  Then,  
to commit the overall work, you need to commit using both vcs.  If you  
need to branch for your work, you need to create branches in two vcs  
(no idea whether the semantics of a branch in git and darcs is  
anywhere similar).  When you merge your branch, you need to merge in  
both vcs.  You can't seriously propose such a set up!

Duncan wrote,
> If there's some way of having automated git mirrors of the upstream
> darcs repos then that's might be convenient for people building ghc.
> Asking the maintainers of all other libs to switch is a bit much
> though.

I am not talking about all libs, I am talking about the core libs.  
Most developers of the core libs are also GHC developers.  So, you ask  
them to change already by changing the vcs of GHC.  Asking them to  
work with two vcs at the same time is worse IMHO.

I *strongly* object to moving to git before this isn't sorted out.  As  
Roman said before, GHC is heading into a dangerous direction.  It gets  
progressively harder to contribute to the project at the moment.  
First, changing the build system to Cabal.  Now, proposing to use two  
vcs.  Somebody who is new to the project not only has to learn the  
internals of GHC, but they also have to learn two new vcs, and if they  
need to change the build system, they need to learn a new build tool.  
Raising the bar for developers to contribute to a project has been  
proven to be a very bad idea many times.  Let's not take GHC down that  
path.

Manuel
 
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@...
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
< Prev | 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 | Next >