Re: What can Git do for translators?



On Thu, Jan 8, 2009 at 1:19 AM, Shaun McCance <shaunm gnome org> wrote:
> Hi Simos,
>
> I don't want to detract from this conversation, because I think
> it's important to consider how this would impact all of Gnom's
> contributors, including translators, documentation folks, etc.
> A switch would have at least some impact on everybody, and we
> need to know how to deal with problems.
>
> But...
>
>> Scenario A
>> => Using command line tools, we add a translation to the main repository.
>>
>> Assume the repository is git://git.gnome.org/gnome-games.git
>> we make a local copy by 'cloning' the repository ('checkout' is
>> something different in git)
>>
>> git clone git://git.gnome.org/gnome-games.git
>>
>> This would create a very big tree, because it would make a full
>> offline copy, with all the history for the last ten years or so. When
>> we use SVN, a checkout of gnome-games is 124MB. The approximate size
>> of a 'git clone' should be quite larger. My test with 'git-svn clone'
>> was not conclusive (due to the way it works, it is very slow, I
>> stopped after an hour, which it downloaded 74MB).
>
> I want to first point out that it's slow because it's git-svn.
> I don't want people to think it would be this terribly slow if
> we were using git.  Cloning from a git server is quite fast.
>
> More importantly, you'd be surprised at just how small a git
> clone actually is.  I have both a git clone and an svn checkout
> of gnome-doc-utils.  The svn checkout is 38MB.  The git clone
> is 26MB.  Seriously, it's smaller.  And the git clone has more
> commits that aren't in SVN yet.

Hi Shaun,

This is the kind of information we need. That a possible move to git
will not cause issues with the current translation practices.

Therefore, for a coordinator that wants to update a translation the
manual way, the steps would be something like

1. Get a copy of the repository for the package (i.e. gnome-games)
$ git clone git://git.gnome.org/gnome-games.git
Initialized empty Git repository in /tmp/gnome-games/.git/
remote: Counting objects: 8728, done.
remote: Compressing objects: 100% (8712/8712), done.
remote: Total 8728 (delta 3431), reused 0 (delta 0)
Receiving objects: 100% (8728/8728), 71541.07 KiB | 239 KiB/s, done.
Resolving deltas: 100% (431/431), done.
$ _

2. Update the translation
$ cd gnome-games/po
$ intltool-update  el
<edit the PO file..>

3. Commit first the translation to the local copy of the repository.
$ git commit -a -m "Updated my translation"
Created commit 22783ff: Updated translation.
 1 files changed, 1 insertions(+), 0 deletions(-)
$ _

4. Push the change to the remote repository at git.gnome.org
$ git push
Counting objects: 5, done.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 316 bytes, done.
Total 3 (delta 2), reused 0 (delta 0)
To git git gnome org:simos/gnome-games.git
   ff4bf15..22783ff  el -> el
$ _

5. That's it!

A practical comparison between git and other DVCSs (and SVN) is at
http://www.whygitisbetterthanx.com/

Simos


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