昨天我做了一些删除和删除太多(我知道典型案例)。 在阅读关于smartgit的博客后,我重置为我在所有删除之前停止的修订版。 我得到了我的旧文件,但是git没有检测到它们在那里,所以我无法将它们再次推送到我的服务器。有任何想法吗?我试着查看gitignore文件并在info文件夹中排除但没有任何东西 - 编辑 - 我已经尝试过强制推送。
我使用的步骤是
- Going to logs
- Select the revision
- Press ctr+R (reset)
- Selected hard reset and confirmed
答案 0 :(得分:0)
假设你有提交: A-> B-> C-> d D提交是您删除太多的提交。所以你再次检查了C.当然,git会检测文件,但是因为你正在查看自C以来没有改变,所以git status不会显示任何内容。
由于你试图重写遥控器的历史记录,推送会失败,你需要做一个git push -f(这是-f for --force见https://www.kernel.org/pub/software/scm/git/docs/git-push.html)
答案 1 :(得分:0)
我需要强制将所有文件拉回我的服务器,我找到了一个stackoverflow帖子:
How do I force git pull to overwrite everything on every pull?
我做的是:
git fetch origin master
git reset --hard FETCH_HEAD
git clean -df
添加了以供将来参考的代码