2

私は git サーバーを持っており、災害時に備えてバックアップする予定です。私はそれをグーグルで検索し、そうするためのいくつかのポイントを得ました:

  1. git clone repos を使用して、必要に応じて新しいサーバーにプッシュし、ローカルでも使用できます。
  2. git バンドルを作成します。

gitの場所のサーバーのファイル構造全体(gitサーバーアプリケーションのすべてのファイル構造を含む)をコピーし、必要に応じてサーバーに戻す必要があるという議論をしている友人がいます。

皆さんの助けが必要です。どのように進めればよいですか、どの方法が最適ですか?

4

2 に答える 2

3

システム管理者の観点から来ている場合は、友人が提案するものが最善です。すべての権限などを含むファイルシステムのバックアップのみが、停止後の回復が 100% 可能で迅速であり、バックアップと回復を最初に心配するのが仕事である通常のシステム管理者チームによって簡単に実行できることを確認します。

(もちろん、通常どおり、バックアップの実行中は受信プッシュを無効にしてください。)

はい、単純git cloneに もできますが、それでは環境全体を取得できません。つまり、ssh 認証 ( ~/.ssh/authorized_keys) を使用している場合は、それも取得する必要があります (GitLab などの他の git サーバーを使用している場合はなおさらです)。git フックは a などによって自動的に取得されませんgit clone。他にもある可能性があります。

編集: もちろん、ファイル システムのバックアップには、リモートで (原文のまま) git に関連するものをすべて含める必要があります。つまり、完全な/home/git(または git を実行しているユーザー) /var/git_repos(またはリポジトリを保持している場所) などです。クリーン インストールされたマシンをセットアップすれば、それらのディレクトリを回復するだけで、すべてを元に戻して実行することができます。

于 2016-08-08T10:48:22.107 に答える
0

git は分散バージョン管理システムです。

これは、誰かがリポジトリを複製するたびに、すべての履歴が複製されていることを意味します。

頻繁に git リポジトリのクローンを作成してプルしておけば、クラッシュした場合でも問題なく復元できます。

于 2016-08-08T09:18:57.017 に答える