Github でフォークした gh-pages と wiki の翻訳フロー
Socket.IO のドキュメントは、本家の gh-pages と wiki にある。
これをリポジトリごとフォークして翻訳し、かつ本家と同期して行く方法を考えた。
[本家] https://github.com/LearnBoost/socket.io
[翻訳] https://github.com/Jxck/socket.io
* 前提
- リポジトリをフォークするとブランチまで全部コピーできる。
- gh-pages というブランチの中身が公開される。
- フォークしたリポジトリは最初は wiki が無いが、フォークした側で wiki を作ると、本家の wiki のコピーが出来る。
- wiki は git でアクセスできて、master が表示される。
- 本家の gh-pages と wiki 以外は手をつけない。
* gh-pages の訳
- フォークしたらまず本家の gh-pages ブランチからを gh-pages-orig ブランチを切る。これが本家との同期用。
- gh-pages の方を訳す。その際、原文は <!– –> でコメントアウトしておく。
- push すれば翻訳の内容は公開される。
- gh-pages-orig の最後に訳したコミットに適当なタグをつけておく。
- 本家の gh-pages が更新されたら、フォークしたリポジトリの gh-pages-orig に pull する。(ここで競合はおこらないはず)
- 最後に訳したタグとHEADまでのdiff を出して、gh-pages の該当箇所を訳す。
- gh-pages-orig に新しくタグを付ける。
* wiki の訳
- フォークしたらすぐに wiki を git-access でとってくる。
- master から orig-master というブランチを切る。これが本家同期用。
- master を訳す。原文はコメントアウト。
- push すれば翻訳の内容は公開される。
- orig-master の最後に訳したコミットに適当なタグをつけておく。
- 本家の wiki が更新されたら、フォークしたリポジトリの wiki の orig-master に pull する。(ここで競合はおこらないはず)
- 最後に訳したタグとHEADまでのdiff を出して、master の該当箇所を訳す。
- orig-master に新しくタグを付ける。
* 補足
- 同期用ブランチのタグは、 1,2,3.. とかでいいと思う。番号が一番でかいのが最後に訳したやつだとすぐわかればいい。
- 本家同期用ブランチのいい名前が浮かばないw
- コメントで原文を残すのは、差分が見つけやすいようにと、あとで翻訳を検証/修正しやすいように。
* 翻訳規則(基本まるまるコメントアウト)
原文
Don't call us. We'll call you.
翻訳
<!–
Don't call us. We'll call you.
–>
問い合わせは不要です。こちらからご連絡します。
ソースの場合はまるまるコメントアウトして、全部残しておく。のがよさげ。
翻訳
<!–
// if text has a source code with comment…
function configure (params) {
app.set(‘logging’, params.logformat); // you should translate it
return (new app()); // comment out all of original text
}
–>
// ソースにコメント付きのソースコードが合った場合
function configure (params) {
app.set('logging’, params.logformat); // それも訳そう。
return (new app()); // めんどくさがらず原文はまるまるコメントアウト
試行錯誤中。