1

最近、XCode C++ プロジェクトをペンドライブにバックアップしました。

rsync -avu 

それ以来、私のプロジェクトのバージョン管理はすべてのファイルでグレー表示されています。ファイルを変更しても、「M」記号も「A」記号も表示されません。バージョン管理が機能している唯一のファイルは、それが正しく機能する「共有」ファイルです。(これらの共有ファイルは、「共有」と呼ばれる別のプロジェクトに属しています)。

を試してみましたがgit commit -m、ファイルがどこにあったかgit add .さえも。git init何も機能しませんでした。

私のプロジェクトのバージョン管理を復元するのを手伝ってもらえますか?


アップデート:

コメント内の質問に対する回答 (および回答):

  1. 私の git リポジトリはローカルのハード ドライブにあります。
  2. XCode の [Organiser-repository] ​​ペインに移動すると、最近の投稿が "sth git commit -m "sth"" az a commit として表示されます。私は単一のブランチを持っています:マスター。
  3. 私のコミットは(理論的には)機能するため、どのコマンドがgitをテストするのに適しているかわかりません。
  4. .gitプロジェクトフォルダーに名前の付いたフォルダーがあります。
  5. git logXCode Organiser-repository ペインと同じように動作しています。

何らかの理由で XCode が git と同期できないと思いますが、それを修正する方法がわかりません。

4

1 に答える 1

1

まず第一に、これはあなたの問題を解決する答えではありません.診断に近づくための助けを提供しようとしています.

Git は、そのファイルを という名前のフォルダーに保存します.git。このフォルダーがプロジェクトに存在するかどうかを確認してください。そうでない場合は、Git リポジトリがなくなっています。

次に、 などの基本的なコマンドを試しgit logます。これが機能するには、最初cdにプロジェクト フォルダー (またはそのサブフォルダー) に移動する必要があります。これは、Git コマンドを実行するたび.gitに、cwd または親フォルダー内のフォルダーが検索されるためです。git log動作しない場合は、Git リポジトリが何らかの形で壊れています。私はこの問題の専門家ではないので、他の誰かが問題をさらに診断するために介入する必要があります。

rsync最後に、コマンドが実際にプロジェクトの.gitフォルダーをバックアップのフォルダーと同期したかどうかも確認する必要があり.gitます。次のコマンドを使用します。

diff -rq /path/to/project/.git /path/to/backup/.git

違いがない場合 (rsync正常に機能した場合に予想されるように)、Git リポジトリの問題はプロジェクトとバックアップの両方にあります。違いがある場合は、バックアップのコピーで次の手順を試す価値があります(Finder でコピーを作成しても問題ありません)。

幸運を。

于 2012-12-23T17:50:55.697 に答える