ブランチングはソフトウェアのバージョン管理で使用されます。ブランチと呼ばれるプロジェクトファイルのコピーにより、チームメンバーは未編集のコピーを保持しながら、同時にプロジェクトのパラレルバージョンに取り組むことができます。これにより、プロジェクトファイルへの変更が誤って上書きされるリスクがなくなります。
メインプロジェクトは、新しいブランチが作成され、そのブランチにのみ変更が加えられたときにコピーされます。変更が完了すると、ブランチはメインプロジェクトにマージされます。複数のブランチを同時に作業し、マージ後にブランチを削除できます。既存のブランチのタグが新しいブランチにコピーされます。
制限
-
翻訳者とゲストを除くすべてのロールが にアクセスできます。
-
マージを元に戻すことも、ブランチを削除することもできません。
-
特定のブランチで作成されたジョブはメインプロジェクトに表示されませんし、その逆も可能です。ブランチがメインプロジェクトにマージされると、ブランチ内の未完了のジョブはすべて失われます。
-
のレポートには、アクティブなブランチのステータスのみが反映されます。ブランチを主プロジェクトにマージすると、主プロジェクトレポートが更新されます。
-
には、アクティブなブランチ内のアクティビティのみが表示されます。ブランチ内のアクティビティはメインプロジェクトでは表示されず、その逆も可能です。ブランチ内のアクティビティは、メインプロジェクトにマージすると失われます。
-
GitHub Syncはメインプロジェクトでのみ使用でき、ブランチでは使用できません。
-
ブランチで行われたコメントは、メインプロジェクトでは表示されず、その逆も可能です。
-
ブランチで作成さ
はメインプロジェクトには表示されず、その逆も可能です。ブランチがメインプロジェクトにマージされると、ブランチ内の未完了のオーダーはすべて失われます。 -
翻訳者を特定のブランチに制限することはできませんが、特定のロケールで作業する権限を与えられます。翻訳者にはブランチでの作業方法を指示してください。
ブランチ機能は、
の「 タブで有効になっており、メインブランチを変更から保護するオプションがあります。有効にすると、ブランチメニューがプロジェクト画面に表示され、作業ブランチを選択できます。CLIでブランチを指定するには、
--branch
パラメータを使用します。
--branch <branch_name>
ブランチは、作成とマージの情報が表示される
に表示されます。 からブランチを削除またはマージし、そのブランチに対してジョブを作成することもできます。APIまたはCLI経由でプロジェクトのすべてのブランチをリストするには、次のコマンドを実行します。
$フレーズブランチリスト<project_id>
APIまたはCLI経由でブランチを削除するには、次のコマンドを実行します。
$ phrase branch delete <project_id> <branch_name>
管理者、プロジェクトマネージャ、開発者の役割は、APIまたはCLIを介して、翻訳エディタで新しいブランチを作成できます。
翻訳エディタでブランチを作成するには、次の手順に従います。
-
のページから、 を選択します。
-
「ブランチを作成」をクリックします。
「
」ウィンドウが開きます。 -
ブランチの名前を入力します。
-
「ブランチを作成」をクリックします。
新しいブランチがリストに追加されます。
APIまたはCPI経由でブランチを作成するには、次のコマンドを実行します。
$フレーズブランチ create --project_id <project_id> --data <data>
翻訳をプッシュするときにブランチを作成するには、次のコマンドを実行します。
$ phrase push --branch <branch_name>
ブランチに変更が加えられたら、それをメインの翻訳にマージして、新しい翻訳を組み込むことができます。
マージでは、次のリソースへの変更のみがメインブランチに適用されます。
-
ロケール
-
キー
-
翻訳
アクティビティ、ジョブ、オーダーなどの他のリソースへの変更は適用されません。
矛盾
ブランチが作成されてからメインプロジェクトにマージされるまでの間に、メインプロジェクトでリソース(翻訳、キー、ロケール)が変更された場合、コンフリクトが発生します。例えば、訳文や複数形などのキー設定など)がブランチ作成後にメインプロジェクトで変更され、ブランチの値がメインプロジェクトと異なっている場合があります。
ブランチをマージする手順は、次のとおりです。
-
プロジェクトの比較とマージ」をクリックします。
から、マージするブランチを選択し、「「
」ページが開きます。結合中に変更される翻訳に関する情報は、セル内をクリックしてアクセスできます。 -
矛盾がある場合は、マージ方法を選択します。
-
競合する変更を拒否し、既存の翻訳を保持するには、「
」を選択します。 -
「
」を選択して、既存の翻訳をブランチの変更で置き換えます。
-
-
「ブランチをマージ」をクリックします。
ブランチがメインプロジェクトにマージされます。
APIまたはCPI経由でブランチをマージするには、次のコマンドを実行します。
$個のフレーズブランチがマージ\
--project_id <project_id> \
--name <name> \
--data '{"strategy":"use_master"}' \
--access_token <token>
-
use_branch
は、ブランチからの変更を適用して競合を解決し、指定がない場合はデフォルトとなります。 -
use_master
はブランチからの変更を拒否することで競合を解決します。
CLI を使用する場合は、 --branch
パラメータでプッシュまたはプルするブランチを指定します。
$ phrase push --branch <branch_name> $ phrase pull --branch <branch_name>
指定したブランチがプロジェクトに存在しない場合、クライアントが作成します。
--use-local-branch-name
を使用して、アクティブなGitブランチのブランチ名を使用してプッシュおよびプルします。
$ phrase push --use-local-branch-name $ phrase pull --use-local-branch-name
プロジェクト引数を取るすべての API エンドポイントは、プロジェクトの特定のブランチに対してアクションを実行するための --branch
パラメータもサポートしています。
$ phrase upload create <project_id> \ --branch <branch_name> --file /path/to/my/file.json \ --file-format json \ --locale-id abcd1234cdef1234abcd1234cdef1234 \ --tags awesome-feature,ニーズプルーフリーディング\ --locale-mapping "{"en":"2"}" \ --format-options "{"foo": "bar"}"