> ## Documentation Index
> Fetch the complete documentation index at: https://docs.diversion.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Git からのインポート

> 既存の Git リポジトリを Diversion に取り込む方法

export const Image = ({src, alt}) => <img src={src} alt={alt} style={{
  width: '90%',
  borderRadius: '1.5rem',
  border: '.3rem solid #555',
  boxShadow: '0 0 1rem #888'
}} />;

既存のリポジトリを Git からインポートすることで、Diversion をすばやく使い始めることができます。
また、Git リポジトリと Diversion の間で双方向同期を有効にすることもできます。これにより、
どちらかで行われた変更が他方に反映されます。
これは、気軽に Diversion をお試しいただける素晴らしい方法です。

<Tabs>
  <Tab title="Web UI">
    Web UI を使ってリポジトリをインポートするには、以下の手順に従います:

    <Steps>
      <Step title="Diversion Sync を有効にする">
        [Diversion Sync GitHub App ページ](https://github.com/apps/diversion-sync) に移動し、指示に従ってインストールします。
      </Step>

      <Step title="リポジトリセレクターを開き「Import Git repository」を選択">
        [ダッシュボード](https://app.diversion.dev/dashboard) にアクセスし、リポジトリセレクタードロップダウン (左上) を開き、そのフッターから **Import Git repository** を選択します (**Create new repository** および **Import from Perforce** と並んでいます)。

        <img src="https://mintcdn.com/diversion-2/cRpeD_gsb0j32D_2/images/import-repo-button.jpg?fit=max&auto=format&n=cRpeD_gsb0j32D_2&q=85&s=1d4cb2ef1b24a6ae677f3eafc44e5285" alt="リポジトリインポートボタン" style={{width: '90%', borderRadius: '1.5rem', border: '.3rem solid #555', boxShadow: '0 0 1rem #888' }} width="287" height="425" data-path="images/import-repo-button.jpg" />
      </Step>

      <Step title="インポートオプションを選択するよう求められます">
        <img src="https://mintcdn.com/diversion-2/tNxAwm8NrThaCp35/images/import-repo-options.jpg?fit=max&auto=format&n=tNxAwm8NrThaCp35&q=85&s=9f9c914d01c192243631b90e5d68a44a" alt="リポジトリインポートオプションモーダル" style={{width: '90%', borderRadius: '1.5rem', border: '.3rem solid #555', boxShadow: '0 0 1rem #888' }} width="576" height="602" data-path="images/import-repo-options.jpg" />

        リポジトリ全体をすべての履歴とともにインポートするか、特定のブランチの最新コミットのみをインポートするかを選択します。

        `Import all branches with history` を選択すると、`Enable continuous bi-directional sync` を選択できるオプションがあります。

        <Card title="注" icon="circle-info" iconType="duotone" color="#ca8b04">
          双方向同期が必要な場合は、[support@diversion.dev](mailto:support@diversion.dev) にご連絡ください。
        </Card>
      </Step>

      <Step title="インポートしたいリポジトリの URL を入力" />

      <Steps title="「Import」ボタンをクリック" />

      <Step title="インポートが完了するのを待つ">
        これはバックグラウンドで行われ、Git リポジトリのサイズによっては数分かかることがあります。
        インポートが完了するとメールが届きます。
      </Step>
    </Steps>
  </Tab>

  <Tab title="CLI">
    CLI を使ってリポジトリをインポートするには、以下の手順に従います:

    <Steps>
      <Step title="Diversion Sync を有効にする">
        [Diversion Sync GitHub App ページ](https://github.com/apps/diversion-sync) に移動し、指示に従ってインストールします。
      </Step>

      <Step title="CLI ターミナルを開く">
        お好みのターミナルを開きます。

        <Card title="Diversion のインタラクティブシェルを使う" icon="lightbulb" iconType="duotone" color="#ca8b04">
          より見やすい UI を備えたインタラクティブシェルを使いたい場合は、好みのターミナルを開いて `dv` コマンドを実行します。
          通常のターミナルと同じように動作し、`dv` の各コマンド（`commit`、`init` など）を `dv` を先頭に付けずにそのまま使用できます。
        </Card>
      </Step>

      <Step title="インポート">
        次のコマンドを実行します:

        ```bash theme={null}
          dv import [git_url]
        ```

        これにより、Git のリポジトリ名と同じデフォルト名でリポジトリを Diversion にインポートし始めます。

        `import` コマンドにはいくつかのオプション引数があります。`dv help import` を実行するといつでもターミナルで確認できます。

        <AccordionGroup>
          <Accordion title="[repo-name]">
            `import` コマンドにリポジトリ名を渡すと、Git のリポジトリ名の代わりに、その名前でリポジトリを Diversion に保存します。

            ```bash theme={null}
              dv import [git_url] [repo-name]
            ```
          </Accordion>

          <Accordion title="--with-sync">
            新しい Diversion リポジトリと Git リポジトリの間で双方向同期を有効にします。これは、どちらかのリポジトリで行った変更が他方に反映されることを意味します。

            これは Diversion をテストしたり、既存の Git ベースのパイプラインを維持するのに便利です。

            ```bash theme={null}
              dv import [git_url] --with-sync
            ```

            <Card title="注" icon="circle-info" iconType="duotone" color="#ca8b04">
              双方向同期が必要な場合は、[support@diversion.dev](mailto:support@diversion.dev) にご連絡ください。
            </Card>
          </Accordion>

          <Accordion title="--git-branch">
            デフォルトでは、Diversion は Git リポジトリのデフォルトブランチの最新コミットをインポートします。別のブランチの最新コミットをインポートしたい場合は、`--git-branch` フラグを使用します。

            ```bash theme={null}
              dv import [git_url] --git-branch [branch-name]
            ```
          </Accordion>

          <Accordion title="--with-history">
            デフォルトでは、Diversion は Git リポジトリのデフォルトブランチの最新コミットのみをインポートします。リポジトリ全体をすべての履歴とともにインポートしたい場合は、`--with-history` フラグを使用します。

            ```bash theme={null}
              dv import [git_url] --with-history
            ```
          </Accordion>
        </AccordionGroup>
      </Step>

      <Step title="インポートが完了するのを待つ">
        これはバックグラウンドで行われ、Git リポジトリのサイズによっては数分かかることがあります。
        インポートが完了するとメールが届きます。
      </Step>
    </Steps>
  </Tab>
</Tabs>
