ヒント
Phrase TMSにおけるGitHub統合の詳細については、GitHub (TMS)を参照してください。
Phrase StringsはGitHubリポジトリと統合し、PhraseとGitHub間でローカライズファイルを同期します。
デフォルトでは、リポジトリはGitHub OAuth Appを使用して接続されます。パーソナルアクセストークンもサポートされており、主にセルフホスト型のインスタンスや、OAuth Appのインストールが不可能な環境向けです。
前提条件
-
.phrase.ymlconfigurationファイルが、監視対象ブランチのルートに存在する必要があります。ファイルは、リポジトリからインポート(pull)またはエクスポート(push)するファイルを定義します。 -
リポジトリには読み取りおよび書き込みアクセスが必要です。
-
設定ファイルの定義が正しくない場合、エラーが発生する可能性があります。ファイルに少なくとも1つのpushとpull訳文、正しいファイル形式、および
update_translationsパラメータの設定があることを確認してください。 -
-
GitHub OAuth Appは、リポジトリを所有するGitHub組織またはアカウントにインストールされている必要があります。
-
リポジトリはOAuth Appのインストールに含まれている必要があります。
-
対象の組織またはアカウントにおいて、GitHub Appをインストールまたは承認する権限が必要です。
-
Stringsアカウントを複数のGitHub組織に接続することをサポートしています。統合設定で、同期するGitHub組織を選択してください。接続できる組織の数に厳密な制限はありません。
-
-
-
クラシックトークン
repoスコープが必要です(パブリックリポジトリと同期する場合は
public_repo)。 -
ファイングレイントークン
以下の権限が必要です:
-
コンテンツ:読み取りと書き込み
-
プルリクエスト:読み取りと書き込み
-
-
リポジトリ設定で署名付きコミットが不要であることを確認してください。
-
-
GitHub で SSO が有効になっている場合は、アクセストークンも有効にする必要があります。
-
phrase_translations ブランチは保護できません。
設定ファイルが配置されたら、次の手順に従ってリポジトリを接続します:
-
メインナビゲーションで、自動化をクリックし、次にリポジトリ同期をクリックします。
または、ページから、までスクロールして、設定をクリックします。
ページが開きます。リストには、閲覧ユーザーがアクセス権を持つプロジェクトのみが表示されます。
-
Add Sync/GitHubをクリックします。
設定ウィンドウが開きます。
-
ドロップダウンリストからプロジェクトを選択します。
-
認証方法を選択します:
-
Githubアプリ(推奨)
GitHub Appがまだインストールされていない場合は、Authenticateをクリックします。認証は一度行えば、複数のリポジトリ同期で再利用できます。
GitHub Appが既にインストールされている場合は、Manage installationをクリックして、対象の組織またはアカウントに対するアプリのインストールを完了します。リポジトリへのアクセスは組織またはアカウントレベルで管理され、個々のGitHubユーザーには紐付けられません。
-
個人アクセストークンを使用する場合、リポジトリへのアクセス権はトークンを作成したGitHubユーザーに依存します。
-
対象のリポジトリで検証済み(署名済み)コミットが必要な場合は、GitHub App認証方法を使用する必要があります。個人アクセストークンを使用してプッシュされたコミットには署名されないため、同期は次のエラーで失敗します:「リポジトリには検証済み(署名済み)コミットが必要です。」
-
-
GitHub Appを使用する場合は、ドロップダウンリストからを選択してください。リポジトリリストはその選択に基づいて読み込まれます。
-
ドロップダウンリストからを選択してください。
-
インポート(プッシュ)およびエクスポート(プル)を行うをドロップダウンリストから選択してください。これは通常、マスターブランチです。
-
必要に応じて、プルリクエストのブランチ名を入力してください。空のままにすると、デフォルト値でブランチが作成されます。
-
必要に応じて、プルリクエストのカスタムを72文字以内で入力してください。
フィールドを空のままにすると、デフォルトのメッセージ、Updated translations from Phraseが保持されます。一度設定すると、カスタムタイトルがエクスポートのたびにデフォルトのコミットメッセージおよびプルリクエストのタイトルを置き換えます。
-
Validate Configurationをクリックして、認証設定と設定ファイルが正しいことを確認してください。
-
必要に応じてオプションを選択し、新規または更新されたファイルがいつプロジェクトに自動インポートされるかを決定します。
-
保存をクリックします。
プロジェクトが選択したGitHubリポジトリに接続され、リストに追加されました。
-
(オプション)pencil iconをクリックして、統合の名前を変更します。
PhraseのGitHub Appは、現在IP許可リストをサポートしていません。GitHub組織でIP許可リストが有効になっており、「Enable IP allow list configuration for installed GitHub Apps」設定がオンになっている場合、GitHubはPhrase GitHub Appをブロックします。その結果、リポジトリのドロップダウンが空になり、エクスポートが失敗します。回避策として、Phraseの送信IPアドレスを組織の許可リストに追加してください。許可リストに追加する現在のアドレスリストについては、Phrase Servers IP Addressesの記事を参照してください。
.phrase.yml configurationファイル内でプッシュコマンドが正しく設定されていることを確認してください。プッシュオプションは、uploads APIエンドポイントと同じです。
ファイルをインポートするには:
-
ページからプロジェクトを選択し、Import
をクリックします。
言語ファイル(設定ファイルでプッシュソースエントリとして定義)がプロジェクトにインポートされます。
デフォルトのロケールが存在する必要があります。
備考
インポート時に問題が発生した場合は、CLI クライアントを使用して
.phrase.yml設定ファイルをローカルでテストし、エラーメッセージを確認してください。必要に応じて、contact Phrase Technical Supportし、サポートリクエストに
.phrase.yml設定ファイルを添付してください。
.phrase.yml configurationファイル内でプルコマンドが正しく設定されていることを確認してください。プルオプション(例:include_empty_translations パラメータ)は、locales download APIエンドポイントと同じです。
ファイルをエクスポートするには:
-
ページからプロジェクトを選択し、Export
をクリックします。
ウィンドウが表示されます。
-
フィールドに対象のブランチを指定します。
リポジトリ内の最新のファイルが、新しいプルリクエストとして目的のブランチにエクスポートされます。
-
ファイルがエクスポートされたら、リポジトリでプルリクエストをマージまたはクローズし、ブランチを削除できます。
備考
エクスポート時に問題が発生した場合は、CLI クライアントを使用して .phrase.yml 設定ファイルをローカルでテストし、エラーメッセージを確認してください。
必要に応じて、Phraseテクニカルサポートに連絡し、サポートリクエストに .phrase.yml 設定ファイルを添付してください。