Re: [SVN-MIGRATION] Github

[email protected] (shire) Tue, 24 Feb 2009 23:38:45 -0800
Newsgroups svn.migration
Message-ID <[email protected]>
I use GIT as a personal staging/development area for all my development and for keeping code in sync between my patches, CVS, and SVN.  I have some concerns about using this for PHP right away, some of the problems with GIT are:

- It's got a significantly higher learning curve than something like SVN
- It's easier to change history, or to fowl things up with some of the more advanced commands.
- I consider it to be a "power" users type tool, you can do a lot of more advanced things but these come with a complexity cost.  Unlike SVN which is pretty simple.
- I think tools still need some work, specifically web interfaces.
- It's pretty easy to import code from SVN and back using git, do we want to move to SVN first (considering we're ready/planning to do so) which will allow more developers to use GIT more?


In regards to GitHub, I also think it's a great tool and have a small project hosted there with plans to mirror a few other things there.  I have a hard time visualizing a large project such as PHP moving to it though.

- I'm a control freak and I feel like the when we need something from GitHub and can't get it, we'll be very frustrated.  This being said, I don't have to admin the current PHP servers either which can be very time consuming. ;-)
- While they probably have one of the best web interfaces, I feel like it's not designed to be a really powerful interface at least not yet.  But I don't feel like there's much out there in this regard either (nor do I know what we plan to use with svn).  It does seem like they've added a few new features since last time I used it, however, so there's probably more on the way.  I just feel like there's some advanced search/diff features missing, and some of the display just isn't designed for powerful usage (fixed width displays for example so I have to scroll for wide width code lines).  If we we where working with an OSS project I would think things like this would be easier/more likely for us to change to meet our needs if we so desired.
- It sounds like mitigating the user names is just one annoyance with moving to an external service, will there be more things like this?  I believe Travis mentioned breaking up into separate repositories this sounds like a lot of trouble to me and would just fragment everything (assuming I understood correctly).  I agree strongly with Rasmus' remarks of having many contributors with lots of control over things in which they are familiar/capable, rather than a few gate-keepers.  (Also want to note regarding Travis' remark about svn:externals, these can point to a path @HEAD or at a specific revision so they should work similar to git submodules.)
- What's the largest project on GitHub?  Will it meet our needs, or are we being used to push the envelope? (could be good or bad, but would probably require patience on our side).


In the end I'm pretty happy with either SVN or GIT, both fit my needs extremely well.  I would be interested in what the GitHub forking would look like, it might stimulate activity (good) which could be hard to manage too (bad).  Maybe we should also consider mirroring our respotory on GitHub as a sort of test-run to get a better feel for the tools and possible pitfals.  This could be done from our central SVN or GIT repository.


-shire



Rasmus Lerdorf wrote:
> Other than the user id collision issue, I actually like the hosted
> model.  I think the risk is minimal for something like git hosting
> because each checked out tree carries the entire revision history, so
> even if github self-destructs somehow, someone out there will always
> have a copy of the latest master tree.
>
> Some of the things I like about the github site itself:
>
> . You can make trivial commits directly on the site by simply clicking
> the 'edit' button.  This lowers the barrier of entry for a lot of
> non-technical people, and even some technical people.  Make trivial
> documentation fixes directly on the site - if you have access, of course.
>
> . The site encourages people to create their own working branches (forks
> in their terminology) and they make it very easy to do that and easy to
> then merge these branches.  People don't need to have access to our tree
> to create these branches, so I think it encourages much better
> contributions.
>
> . The Network view is cool.  See
> http://github.com/spullara/yql-tables/network for an example of a small
> project I have been committing to (directly on master in my case)
>
> . Maintaining the server and handling backups becomes someone else's
> problem, for a change.  We are (well, ok, I am) notoriously slack about
> sys-admin duties, so the less we have to do, the better.
>
> . The Github guys are motivated to make it work well for us.  If they
> support our avail file format and provide us with pre and post commit
> hooks that we have full control over, then I think we will be able to do
> all the things we do today pretty much the same way.
>
> It may sound like I am completely sold on this, but I am actually not.
> I am fishing for negatives here.  I think the user id issue is pretty
> serious.  Bug reports and code comments referring to cvs ids would be
> inconsistent if we are forced to rename all the users and all their
> historical commits.
>
> -Rasmus
>
>
> Andi Gutmans wrote:
>> Based on their web site it seems that for some large organization they are willing to skip the SaaS setup and do onsite hosting. Maybe this is an option?
>>
>> Also, is what you are saying that git in itself does not have quite enough value/convenience for us to move but with Github it becomes extremely compelling because of the value-add? (Not disagreeing but just interested to understand whether the decision here is SVN vs. git or SVN vs. Github)
>>
>> Andi
>>
>>> -----Original Message-----	
>>> From: Helgi Þormar Þorbjörnsson [mailto:[email protected]]
>>> Sent: Tuesday, February 24, 2009 5:00 PM
>>> To: Rasmus Lerdorf
>>> Cc: Travis Swicegood; [email protected]
>>> Subject: Re: [SVN-MIGRATION] Github
>>>
>>> On Wed, Feb 25, 2009 at 12:50 AM, Rasmus Lerdorf<[email protected]>  wrote:
>>>
>>>> I think another point of dissent would be username issues.  'rasmus' was
>>>> already taken on github, for example, so 10+ years of commits under
>>>> 'rasmus' now needs to be mapped to some other user id?  That doesn't
>>>> sound appealing.
>>> Question then would be if they are ready to create a new user database
>>> for us that only works with php.github.org or something similar ?
>>> Probably not the ideal solution either since I'd not be using my
>>> normal github username for the php repo and thus losing one of the
>>> attractiveness of moving to github.
>>>
>>> - Helgi
>>>
>>> --
>>> SVN Migration Project Mailing List (http://svn.php.net)
>>> To unsubscribe, visit: http://www.php.net/unsub.php
>
>