Stardeusの和訳についてのメモ


Upstreamの更新取り込み

自分の翻訳用リポジトリは、
upstreamリポジトリ( git@github.com:kodolinija/stardeus-translations.git )からforkして翻訳作業をしているため、
本流( upstream )で更新があったら取り込んでいく必要があります。

※ 自分のローカルのgitクライアントでは、SSHのconfig設定を変更してgithubアカウントの振り分けをしています。このためドメインが yurama.github.com になっています。

まず、ローカルの作業環境のリポジトリで、リモートリポジトリに upstream を追加しましょう。

次のコマンドを実行します。

git remote add upstream git@yurama.github.com:kodolinija/stardeus-translations.git

これで upstream リポジトリをローカルの作業リポジトリの参照先として追加しました。

次に下記のコマンドで、
追加した upstream のブランチを最新化して取り込みます。

git fetch upstream

これは upstream に更新があるたびに実施します。

これで、upstream リポジトリのブランチを今後 remotes/upstream/hoge で操作できます。
upstream から取得できているブランチは git branch -a で確認できます。

そして、手元のリポジトリで main ブランチをチェックアウトし、

git rebase remotes/upstream/main

で、upstream のコミットを取り込み、自分のコミットをその上に配置します。
これで手元の main ブランチは upstream のものと同一になります。
checkout -B main remotes/upstream/main 操作でもいいのですが、向き先が upstream になってしまうとか、万が一ブランチを切り替え忘れていた場合に消し飛ばしてしまうとかの弊害があるので念のためrebaseします。

Pull Request前のオペレーション

Pull Request 時に自動的に reject されたり conflict したりしないように、
あらかじめ upstream の更新を取り込んでから push して Pull Request をします。

先述のように、 upstream から main ブランチを取り込んで更新し、
作業中の自分のブランチ( 和訳作業なので feature/Japanese ブランチ )をチェックアウトして、

git rebase main

します。これで本流の最新コミットの上に、自分のコミットを配置できます。

そして、git push -f でpushし、そこから Pull Request します。
これで Pull Request の差分が自分のコミットだけになっているはずです。