私は小さな会社で働いていますが、私たちの Git リポジトリは少し混乱しています。を実行したところ、git pull
今日以前に行った変更が失われました。
master ブランチで HEADを操作すると、履歴にgit log
最後のコミットb94940c63ef965ce45b0d64ccfba4359134d2552が表示されます。
変更を失った問題のあるファイルに対して行うgit log filename
と、そのコミットは表示されません (以前のコミットのみが表示されます)。
を実行git log --follow filename
すると、私のコミットb94940c63ef965ce45b0d64ccfba4359134d2552が最新のものとして表示されます。
そして、私がそうすれば十分です:
git checkout b94940c63ef965ce45b0d64ccfba4359134d2552
git log filename
その後、コミットが表示され、私の変更がファイルに含まれています!
つまり、私が行ったコミットはブランチ履歴に表示されますが (ブランチ マージをブロックします)、変更された個々のファイルの履歴にはそのコミットがありません! (そのコミットを明示的にチェックアウトしない限り)。
質問:
一体どうしてこれが起こったのですか?
どうすれば修正できますか?(レポ内の複数のファイルに問題があります)