(完全に自分用のメモです。)
いくつか翻訳のプロジェクトを GitHub 持っているのですが、更新が年単位の間隔が開くことも珍しくないので、自分のために作業のワークフローを残しておこう。
- Airbnb の JavaScript スタイルガイド
- Clean Code For JavaScript
アップデートのワークフロー
1. 翻訳する本家のコミットのスナップショットを記録する
まず、翻訳する本家のコミットのスナップショットを記録します。
本家のコミットは翻訳用のリポジトリにupstream
と言う名前でリモートリポジトリを追加します。
git remote add upstream <リポジトリURL>
upstream
が慣例のような気がする。
結局のところ、文書のフォーマットが Markdown なので、オリジナル文書と翻訳したものが混在してしまいます。うまく Diff を取ることが難しいため、オリジナル文書の差分を手動でコピーして、翻訳を追加していきます。
2. 以前のスナップショットとの差分を抽出する
さて、前回の 作業から数ヶ月が経ちました。やっと重い腰をあげて翻訳をアップデートするとします。
翻訳用のリポジトリのupstream
と、本家の差分を抽出します。
これは GitHub 上の GUI で作業できるので、 翻訳用のリポジトリ「New pull request」画面に移動して「compare accoss forks」の画面へ移動します。
ここで本家から翻訳用のリポジトリのupstream
へ pull request を作ります。
(左側に翻訳用リポジトリ。右側に本家です。)
実際の pull request:
これでファイルの差分がわかるので、地道に 文書をアップデートしていきます。ちなみにここでマージしたupstream
が次回アップデートするためのスナップショットです。
まとめ
以上が簡単なワークフローのまとめでした。
スクリプトとか組めばもっと格好のいい形になるのかもしれませんが、それほど頻繁にやる作業ではないので、これくらいゆるい感じがちょうどいいのです。