Re: What can Git do for translators?



Jumping in in the middle again, with some experience from Mozilla after our switch to hg:

One of they key questions when moving to a dvcs is what goes into which repo.

This isn't really a requirement of a dvcs, but seems to come with the design of at least hg, and from glancing at it, git, too.

DVCSes are bad at partial clones. In hg it's straight out impossible, and I haven't seen an obvious way in git. From my understanding, this comes from having a unique identifier for a repo so that you know where local commits would go when you push back upstream or round-robin or in circles and whatnot.

What we do in Mozilla is:

- one repo for Firefox and Toolkit
- one repo for Thunderbird and Calendar and most parts of SeaMonkey
- helluva more repos on hg or cvs for SeaMonkey
- one repo for each localization for all three products

The rationale for using a single repo per locale, and to not mirror the split in the en-US products was to optimize for smaller teams, where it's mostly one person working on everything anyway, and to not have them go through 5 repos for one locale. The downside is that for bigger teams with more than one committer, each contributor ends up having to pull and merge other apps and contributions before being able to push their own changes. In particular as we only allow one head per named branch on the repos. (User repos don't have that constraint, though.)

There has been a rather lengthy discussion in our community if that's the right choice, both on the en-US side and the l10n side. The benefits of a DVCS just ask for a different set of compromises, sadly.

I can't really tell which setup would be right for GNOME, as I don't know the community nor the module structure well enough, but if you have concrete questions, I'll try to come up with concrete answers.

Another thing, release tags are a common source of grief, as that's a given landing on the l10n repos that are not done by the localization teams, and thus require them to pull and merge, or not, depending on their local status.

HTH

Axel

2009/1/8 Gabor Kelemen <kelemeng gnome hu>
Thomas Thurman írta:
> 2009/1/7 Sharuzzaman Ahmat Raslan <sharuzzaman gmail com>:
>> What I care is my language po file. Maybe around 15KB.
>>
>> Why should I download the whole bunch of data while the one that I need is
>> just a small fraction of it.
>
> Indeed, why should you?  You can get it from Damned Lies, can't you?
>

Because I want/have to do

$ git push

Or can git check out only a single directory or file? I seriously don't
know, so don't take it as an offence.

I'm asking this because checking out anything other than $LANG.po and
Changelog, optionally LINGUAS is not really necessary for doing
translations. (CVS could do this! ;))

With SVN, we have to check out at least the po directory - not much more
 data, but still worse than CVS wrt to saving badwidth. Taking one more
step backwards and having to download an entire repo would be quite bad
in this regard - at least for those with limited bandwidth and until
Transifex saves them.

Regards
Gabor Kelemen
_______________________________________________
gnome-i18n mailing list
gnome-i18n gnome org
http://mail.gnome.org/mailman/listinfo/gnome-i18n



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]