致命的なファイル・システム・エラーが発生した後にGitを復元する方法?

StackOverflow https://stackoverflow.com/questions/552832

  •  23-08-2019
  •  | 
  •  

質問

メインサーバ上のファイルシステムエラーの後にgitリポジトリを復元する最速のパスは何ですか?

あなたのOSSプロジェクトの中央サーバーに障害が発生し、2日間のすべてのコミットは、復元後に失われている想像してみてください。どのようにそれらの背中を得るのですか?それだけですべてのクライアントに「Gitのプッシュ」を呼び出すのに十分ですか?それとも私が考慮しなければならない何か他のものがありますか?

役に立ちましたか?

解決

すべてのリポジトリは、その最新のgit pushまたはgit fetchをしたリポジトリからgit pullがその状態にすべてがかかっアップする必要がありますも(のみ慣例により「メイン」である)「メインリポジトリ」のバックアップですもちろん。あなただけのフックと、このようなの世話をする必要がありますが、あなたがコミットの最後の2日分はそれらを失ったことを言うならば、おそらく、とにかく被害を受けませんでした。

他のヒント

git pull、次いでgit pushが十分でなければならない。

代わりに(複数のコミッターがある場合)git push -fは強制的にローカルコピーを使用してサーバーを更新しますが、これは他の人のための問題を引き起こす可能性があります。

あなたが任意の更なる問題やエラーに実行する場合、私たちは知ってみましょう。

私はサーバー上に新しいレポを作成する方が良いかもしれないと思う。

% ssh user@server
% mv /path/to/repo /path/to/repo.old
% mkdir /path/to/repo
% cd /path/to/repo
% git init --bare

そして、あなたが持っているすべての異なるクローンから押してください。私の考えでは、これは古いレポであってもよく、任意の破損したファイルを避けるだろうということです、そして、全くの損失があってはならない、あなた自身のクローン上のすべての作業を提供し、誰もが、サーバーのレポでいじりされます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top