1

Time Machineを使用して、Macを10日前の状態に戻しました。次に、コーディングを続けるために、Webサイトのリポジトリフォルダーを1日前に更新しました。

git statusまたはを実行するとgitk、現在のビューではなく10日前のビューが表示されるため、最近のコミットがいくつか欠落しています。現在のデータを取得するために更新する必要のあるフォルダ/ファイルはどこにありますか?

この説明が必要な場合に備えて、私originのGithubには、6 / 10、6 / 7、6 / 1、および5/30のコミットがあります。私の障害git statusは、コミット6/1と5/30のみを表示し、他のファイルは、コミットされていないかのようにステージング領域に浮かんでいます。

4

2 に答える 2

0

問題の原因

私のローカルフォルダーには、ローカルリポジトリである隠し.gitフォルダーが含まれています(@JonathanLefferに感謝します)。リポジトリ内のすべてのファイルを手動で復元するように選択したときに、TimeMachineが.gitフォルダーを復元しませんでした。

解決

手動で.gitを1日前の状態に復元しました。すべてのファイルに対して「置換」を選択して、古いファイルが新しいファイルで上書きされるようにしてください。実行後gitk、6 / 10、6 / 7、6 / 1、および5/30のすべてのコミットが表示されます。

于 2012-06-14T06:19:07.337 に答える
0

私はタイム マシンに詳しくありませんが、これは、Dropbox や Spideroak などを使用して複数のコンピューター間でリポジトリを共有するときに発生する可能性があることと少し似ています。システムは基本的にリポジトリでの作業に遅れないようにしようとしますが、バックグラウンド作業用に最適化されており、コンピューターのアクティブな使用を妨げないように最適化されているため、.git フォルダー内のすべてのファイルの変更を 100% 追跡していない場合でも、あるコンピューターからもう1つは、壊れたレポを取得できます。バックアップ システムでのこの種のアクションが同じ問題を引き起こしたのではないでしょうか?

とにかく、新しい空のレポフォルダーを作成し、github からプロジェクトのまったく新しいコピーを取得してみてください。

于 2012-06-13T23:53:18.090 に答える