[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] translations: Make "GIT Committish:" lines obsolete
From: |
Johannes Schindelin |
Subject: |
Re: [PATCH] translations: Make "GIT Committish:" lines obsolete |
Date: |
Sun, 14 Jan 2007 12:58:42 +0100 (CET) |
Hi,
On Sat, 13 Jan 2007, Jan Nieuwenhuizen wrote:
> Johannes Schindelin <address@hidden> writes:
>
> > Use git to determine when the translation last changed instead of
> > relying on the "GIT Committish" line.
>
> Thanks for helping to solve this silly Git issue. However, I do not
> understand, how can Git know what original version was translated?
Well, it can't. As I mentioned in my email, the committer has to make sure
that he is committing an up-to-date translation, i.e. that it corresponds
to the English documentation in the _same_ revision.
> It is perfectly possible that the translater copies the entire site
> (currently identifying and freezing the original copy by adding Git
> Committish: <> in those files), translates all files, and commits 2
> weeks later. In the mean time, the original site has seen several
> updates.
>
> Using this patch, will the correct diff be shown to the translator to
> help her incorporating the changes made in the mean time?
It _can_ be done, but is a little more involved. The basic idea is to
introduce a side branch starting at the revision this translation is based
on. Then, just commit the translation (which means that the translated
text corresponds exactly to the English text in that revision). Merge the
result back into the main branch. In git commands:
# replace myweb~20 by whatever revision this is based on
$ git checkout -b sidebranch myweb~20
# apply the patch (assuming you got it as a mail with an inlined patch)
$ git am themailboxfilewiththepatch
# go back to main branch
$ git checkout myweb
# merge the sidebranch
$ git pull . sidebranch
(# with git 1.5.0 this will be instead
$ git merge sidebranch)
The commit ancestry now looks like this:
myweb~21 - myweb~20 - ... - myweb
\ /
sidebranch
Note that what was myweb~20 before is now myweb~21, becasuse we added a
commit to that branch.
This will _only_ work, however, if myweb~20 .. myweb~1 do _not_ touch
files of that particular translation (otherwise _they_ would be found,
instead of the changes in sidebranch).
Having said that, I doubt that it will happen all that often: Once we have
reasonably up-to-date translations, the updates will be small, and
probably applied very fast.
And for new translations, the contributors can use "make
check-translation" themselves, to find the spots they have to update
before submission.
Ciao,
Dscho