# GitHub Syncを有効にする

### はじめに

GitHub リポジトリと同期したいスペースで、 [スペースヘッダー](https://gitbook-v2-q67etdj25-gitbook.vercel.app/url/gitbook.com/docs/documentation/ja-gitbook-documentation/rissu/gitbook-ui#space-header) 右上の **設定**を開き、 **GitHub Sync**.

<figure><img src="https://4217681718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNkEGS7hzeqa35sMXQZ4X%2Fuploads%2FSmP9bdDqDK0gOpDYdSdj%2FEnabling%20GitHub%20Sync%402x.png?alt=media&#x26;token=a10a9f24-4f69-4b34-a802-64424aac7f76" alt="A GitBook screenshot showing GitHub Sync configuration options"><figcaption><p>GitHub Sync の設定オプション。</p></figcaption></figure>

### GitHub で認証する

GitHub Sync を初めて設定していて、まだ GitHub アカウントを連携していない場合は、Git Sync の設定を開始するとその操作を求められます。すでにアカウントを連携している場合でも、GitHub 経由での認証が必要になることがあります。

{% hint style="warning" %}
次のような **「重複の可能性があるアカウント」** というエラーメッセージがこの चरणで表示される場合、それはあなたの GitHub アカウントがすでに別の GitBook ユーザーアカウントに連携されていることを意味します。

どのアカウントが連携されているかを特定しやすくするため、このセッションからログアウトし、GitHub でサインインする方法を使って再度ログインする必要があります。

すでに GitHub に関連付けられた GitBook アカウントが分かっている場合は、そのユーザーアカウントにログインして GitHub アカウントの連携を解除し（設定で実施）、その後もう一度ログインして現在のアカウントを連携できます。

詳細は [トラブルシューティングページ](https://gitbook-v2-q67etdj25-gitbook.vercel.app/url/gitbook.com/docs/documentation/ja-gitbook-documentation/getting-started/troubleshooting#potential-duplicated-accounts-when-signing-in).
{% endhint %}

### GitBook アプリを GitHub アカウントにインストールする

まだ行っていない場合は、 [GitBook アプリ](https://github.com/apps/gitbook-com) を GitHub アカウントに追加するよう求める案内が表示されます。

GitHub のポップオーバーに従い、必要に応じて GitBook に特定のリポジトリ権限を与えるか、すべてのリポジトリへのアクセスを許可してください。

### リポジトリとブランチを選択する

GitBook のコンテンツと同期したいアカウントおよびリポジトリを選択してください。

{% hint style="info" %}
**リポジトリが見つかりませんか？** 一覧にリポジトリが見つからない場合は、 [GitBook GitHub アプリ](https://github.com/apps/gitbook-com) を正しいスコープ（つまり個人アカウント、またはリポジトリが存在する GitHub 組織）にインストールしたことを確認してください。また、GitBook GitHub アプリで正しいリポジトリアクセスを設定しているかも確認してください。
{% endhint %}

正しいリポジトリを選択したら、コミットをどのブランチにプッシュし、どのブランチから同期するかを選んでください。

### 初回同期を実行する

初めて同期する際は、2 つの方向のどちらかで同期するオプションがあります。

1. GitBook -> GitHub は、スペースのコンテンツを **に** 選択したブランチへ同期します。空のリポジトリから始める場合や、GitBook のコンテンツをすばやく取り込みたい場合に最適です。
2. GitHub -> GitBook は、スペースのコンテンツを **から** 選択したブランチから同期します。リポジトリに既存の Markdown コンテンツがあり、それを GitBook に取り込みたい場合に最適です。

### 書き込んでコミットする

これで準備完了です。スペースが [ライブ編集](https://gitbook-v2-q67etdj25-gitbook.vercel.app/url/gitbook.com/docs/documentation/ja-gitbook-documentation/collaboration/live-edits) モードだった場合、ライブ編集はロックされていることに気づくはずです。これにより、チームの誰かが GitBook で[ 変更リクエスト](https://gitbook-v2-q67etdj25-gitbook.vercel.app/url/gitbook.com/docs/documentation/ja-gitbook-documentation/collaboration/change-requests) をマージしたときに、コンテンツをリポジトリへ確実に同期できます。

GitBook で編集すると、変更リクエストがマージされるたびに、選択した GitHub ブランチへコミットされます。

GitHub にコミットすると、そのたびに各コミットが履歴コミットとして GitBook スペースに同期されます。

{% hint style="warning" %}
GitHub 連携を支える GitHub アプリは、現在 GitHub Enterprise Server インスタンスのお客様にはご利用いただけません。
{% endhint %}
