Am 19.07.2012 um 21:54 schrieb Kieran Kelleher:

> On Jul 19, 2012, at 3:00 PM, Maik Musall wrote:
> 
>> I'm about to migrate a large project which is currently managed in 
>> subversion to git. Git experience is still limited. Besides wonder 
>> frameworks, the project consists of
>> 
>> - one application
>> - several frameworks that are more or less specific to the application
>> - several more generic frameworks that we use throughout the company in a 
>> number of apps.
>> 
>> In subversion, all those are separate projects but on the same svn server. 
>> This enables commits spanning the app itself and all affected frameworks, 
>> for example to encapsulate one change that changes the API of a framework 
>> and adapts the app to that API change at the same time.
>> 
>> What would the git freaks among you recommend as a repo layout for that?
> 
> One svn server or one svn repo right now?

One server, an extensive folder structore on that, where eventually some 
subfolder represents a project. In that project folder again subfolders for the 
app and each framework. In another folder somewhere in the structure there are 
subfolders for the generic frameworks. As I understand subversion, there's no 
hard distinction between folders and repos, as a repo is also just a folder 
that happens to contain the project files.

> IMHO, just do a one-to-one svn repo conversion and convert the svn history to 
> git history (plenty of articles showing how to do that, and it should be 
> straightforward if your svn layout was always the standard 
> trunk/branches/tags.

Unfortunately, there's a mixture between stuff using the standard 
trunk/tags/branches layout and stuff that just sits directly in it's folder. 
Sigh...

>> I don't think putting it all into one giant repo isn't an option because 
>> that would require all other projects (which are dozens) we have to be in it 
>> as well. That would not only be an unmanageable mess, but we couldn't pull 
>> off git migration for everything in one step anyway.
> 
> As mentioned above, convert each svn repo to a git repo. You can even just do 
> that now yourself on your own machine to experiment and see what it looks 
> like. 
> 
> One popular process is to 
> (1) use svn-mirror to make a local svn mirror (clone?) of the svn repo and 
> then 
> (2) do a git-svn conversion clone on that (with a constructed authors file) 
> and then 
> (3) make a final svn-meta-data-free clone of that intermediate one.
> 
> If all goes smoothly, you can write a script to update and maintain all three 
> intermediates
> 
>       live-svn --> svn-mirrror --> git-svn-clone --> pure-git-clone
> 
> Lots of articles on this if you do a google search.

Yes, already reading through all sorts of articles. My question aims for actual 
experience with typical WO projects.

Good thing is, I can clone and look at it at will locally, so I'm now 
experimenting with different layouts. The most probably outcome so far looks 
like one repo for the app and the app-specific frameworks, and separate repos 
for each generic framework. But I have no idea yet how to manage the 
dependencies between those.

Thanks, Kieran!

Maik



 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to