Re: [git for translators] How to always generate conflicts for merges?

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

 



Hi Junio,

There's a repo for each language, with the same file structure.

For example, English version (upstream):
https://github.com/javascript-tutorial/en.javascript.info/blob/master/1-js/01-getting-started/1-intro/article.md

Japanese:
https://github.com/javascript-tutorial/ja.javascript.info/blob/master/1-js/01-getting-started/1-intro/article.md

As English version is updated, changes need to be delivered to translations.
That's done with "git pull upstream master" from translations.

As the text structure (paragraphs) is the same, usually merges give conflicts exactly in the places where English version changed.

Sometimes though, e.g. when a new chapter is added to upstream, the merge just goes through "successfully".

That's what I'd like to avoid, as all changes need to be human-controlled.

---
Ilya Kantor
https://javascript.info

> On 25 Jul 2019, at 19:37, Junio C Hamano <gitster@xxxxxxxxx> wrote:
> 
> Ilya Kantor <iliakan@xxxxxxxxx> writes:
> 
>> We're using Git to manage translations of an open-source book, and
>> most of time it works well. But there's also a problem.
>> 
>> When we pull changes from upstream (English) to translation
>> (e.g. Japanese), git auto-merges them.
>> 
>> Sometimes there conflicts, but not all the time.
>> 
>> For example, when a new file is added to English, it just gets
>> auto-merged into Japanese.  But all new changes must be
>> human-controlled, translated.
>> 
>> Is there a way to force git always generate a conflict, even if
>> changes could be auto-merged?
> 
> I am not sure what the workflow here and if it makes sense.  When
> you have a file, "chapter47.txt", whose original is in English, the
> translation projects (there are N of them, one for each language)
> will have their own "chapter47.txt" that has translated text in the
> same place?  It looks to me that, working that way, the project for
> translating into e.g. Japanese have no way to keep any of the
> original English version, in which case why are you even "merging"
> the English version in the first place?
> 
> I would have understood if the original "chapter47.txt" is translated
> into "chapter47_ja.txt" and friends, like "chapter47_fr.txt", all of
> which sit next to the original "chapter47.txt".  Then merging an
> updated version of the original from time to time would make perfect
> sense to me---that would give you a way to see what changed in the
> original (e.g. "git show --first-parent -m -p master chapter47.txt")
> to guide you find the places you would need to make corresponding
> changes to the variant of your language, e.g. "chapter47_??.txt".
> 





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux