アーカイブまたはディザスター リカバリーの目的で、リポジトリのバックアップを作成できます。
使用する GitHub 機能と要件 (バックアップを復元できる必要があるかどうかなど) に応じて、さまざまなデータを含むさまざまなバックアップ オプションがあります。
バックアップを外部ハード ドライブに保存したり、Azure Blob Storage、Google ドライブ、Dropbox などのクラウドベースのバックアップ サービスまたはストレージ サービスにアップロードしたりできます。
Git CLI を使用した Git リポジトリのバックアップ
Git リポジトリには、プロジェクトに関連付けられたファイルとフォルダーのすべてと、各ファイルのリビジョン履歴が含まれています。 詳しくは、「Git について」をご覧ください。
Git CLI を使用してミラー複製を実行することで、リビジョン履歴を含む Git リポジトリのバックアップを作成できます。
ミラー複製を実行するには、--mirror
オプションで git clone
コマンドを使用します。
git clone --mirror https://github.com/EXAMPLE-USER/REPOSITORY.git
リポジトリに Git Large File Storage オブジェクトがある場合は、そのオブジェクトをプルします。 Git Large File Storage とそのインストール方法の詳細については、「Git Large File Storageについて」を参照してください。
git lfs fetch --all
Git リポジトリを複製したら、それを圧縮してアーカイブ (.zip
ファイルや .tar.gz
ファイルなど) にし、安全に保管するための場所に移動できます。
アーカイブを展開し、Git リポジトリを Git リモートにプッシュすることで、バックアップを復元できます。
Git CLI を使用した Wiki のバックアップ
GitHub の Wiki は Git リポジトリとして格納されます。 つまり、Wiki を複製することでバックアップできるということです。 Git を使用して Wiki をクローンする方法の詳細については、「ウィキページを追加または編集する」を参照してください。
Wiki を複製したら、それを圧縮してアーカイブ (.zip
ファイルや .tar.gz
ファイルなど) にし、安全に保管するための場所に移動することができます。
アーカイブを展開し、Wiki リポジトリを Git リモートにプッシュすることで、バックアップを復元できます。
移行アーカイブを使用して Git リポジトリと選択したメタデータをバックアップする
REST API を使用して、リポジトリの移行アーカイブを生成できます。 詳しくは、「組織の移行用の REST API エンドポイント」をご覧ください。
これらのアーカイブは、GitHub 製品間でデータを移動できるように設計されていますが、アーカイブ目的でリポジトリをバックアップするために
Warning
移行アーカイブには、リポジトリに関連するすべてのデータが含まれているわけではありません。 たとえば、Git Large File Storage オブジェクト、ディスカッション、パッケージは含まれません。 移行アーカイブに含まれる内容の詳細については、「GitHub 製品間の移行について」を参照してください。
アーカイブを生成したら、安全に保管するために選択した場所に移動できます。
GitHub で移行アーカイブを復元する方法はサポートもドキュメント化もされていません。そのため、これらのバックアップはアーカイブ目的にのみ適しています。
サードパーティのバックアップツール
リポジトリのバックアップを自動化するセルフサービスのツールはたくさんあります。 バックアップ ツールは、_特定_のリポジトリからデータをダウンロードし、新しいブランチまたはディレクトリ内に整理します。
セルフサービス バックアップ ツールの詳細については、「GitHub Marketplace のバックアップ ユーティリティのカテゴリ」を参照してください。