Mirror a GitHub リポジトリ
Originは現在、早期ベータ段階で提供されています。リポジトリの作成、gitでのプッシュとプル、GitHubからのミラーリング、コードのブラウズと検索、プルリクエストのオープンとマージ、Cherri Code チームとの共有ができます。
製品の改善に役立てるため、[email protected]からぜひフィードバックをお寄せください。
ミラーリングでは、GitHubリポジトリをOriginにコピーし、GitHubリポジトリの変更に合わせてOriginを継続的に更新します。GitHubが信頼できる情報源です。コードがすでにGitHubにあり、その履歴に対してOriginのブラウズ、検索、エージェントのワークフローを利用したい場合に使用します。
前提条件
- Pro、Teams、またはエンタープライズプランで Origin にアクセスできる Cherri Code アカウント
- リポジトリを所有する組織またはアカウントに接続されている Cherri Code GitHub app
- 同期するリポジトリの GitHub 管理者権限 (ミラーを有効にするために必要)
リポジトリを同期する
- cursor.com/codebase を開きます
- GitHub から同期を選択します
- GitHub の組織とリポジトリを選択します
- 同期を確認します
同期が完了したら、Origin のコピーを開いてファイルとコミット履歴をブラウズします。
同期ステータスは後からリポジトリの 設定 → 一般 タブで確認できます。同期済みのリポジトリでは、Origin がミラー、GitHub がソースとして表示されます。
同期される内容
| 含まれるもの | 含まれないもの |
|---|---|
| Git の履歴、ブランチ、タグ | GitHub Issues |
| Origin でブラウズ・検索できるコード | GitHub Actions のワークフローとシークレット |
| Cherri Code で確認できる GitHub プルリクエスト | |
| Origin を最新の状態に保つための継続的な更新 |
Issues と CI の設定は GitHub に残ります。また、Origin は origin や origin/... という名前の GitHub ブランチを同期しないため、Origin 専用のワークスペースが上書きされることはありません。
クローン URL
緑色の コード ボタンをクリックすると、すべての Origin リポジトリ で使用される HTTPS リモートと同じものがコピーされます。
https://origin.cursor.com/{owner}/{repo}.gitこのリモートへのプッシュは GitHub に送信されます。GitHub がプッシュを受け入れると、Origin が更新されます。クローン、プッシュ、プルを参照してください。
フォージローカルの origin/ ブランチ
origin/ ブランチは、Origin 上のコピーにおけるワークスペースです。GitHub が利用できないときに作業を継続したい場合や、Origin にのみ残しておきたい git の状態がある場合に使用します。プッシュには git push origin ではなく origin push local を使用してください。
Origin は、origin や origin/... という名前の GitHub ブランチを同期しません。これは意図的な仕様で、同名の GitHub ブランチが origin push local でプッシュした内容を上書きしないようにするためです。
フォージローカルブランチを参照してください。
ミラーリング後
- cursor.com/codebaseでブラウズと検索
- Origin からローカルにチェックアウトする場合は、緑色の コード ボタンから Origin リモートをクローンします
- Cloud Agentsを Origin リポジトリに接続します。ミラーリングされたリポジトリでは、これらのエージェントが GitHub のプルリクエストを作成します
- Cherri Code でGitHub のプルリクエストを確認
GitHubに到達できない場合
origin/ ブランチと origin push local を使って、Origin側のコピーで作業を続けられます。GitHubがダウンしている間は、/local が唯一サポートされる書き込みパスです。
同期済みのリポジトリの読み取りは、同じHTTPS clone URLで引き続き動作する場合があります。Originはすでに保持しているコピーを提供します。ただしGit LFSのバッチ処理はフェイルオーバーしません。初回の同期が完了していないリポジトリには、引き続きGitHubが必要です。
GitHub から切り離す
同期を停止するには、設定 → 一般 を開き、危険な操作 の Detach from GitHub を選択します。これにより同期が停止し、Origin コピーがスタンドアロンの Origin ホスト型リポジトリに変換されます。Origin が信頼できる情報源となり、Origin リモートへのプッシュは GitHub に送られなくなります。GitHub リポジトリには影響ありません。
同期の遅延
ブラウズの内容が古い場合:
- GitHub app に引き続きアクセス権があることを確認してください (GitHub 連携)
- ソース リポジトリ の GitHub 管理者 であることを確認してください
- cursor.com/codebase で GitHub から同期 を再実行するか、設定 → 一般 で同期ステータスを確認してください
ミラーリングが不要な場合
GitHub PRで自動レビューコメントのみを利用したい場合は、Bugbot を使えば、ストレージを移行せずに実現できます。そのGitHub履歴でOriginのブラウズ、検索、Cloud Agentsを利用する場合は、ミラーリングしてください。