所以我在尝试将我的本地git存储库推送到github之后编辑了我的.htaccess文件。这是我第一次这样做并且遇到了一些问题,但现在我的.htaccess已经和/ assets目录中的大量其他文件一样消失了,我吓坏了。这就是我所做的:
我不知道发生了什么,但我检查了垃圾箱,我只有一个分支'Master',我的文件都没了。我只想让我的目录回来并完全删除git并重新开始。我假设当前目录反映了我所在的分支。
答案 0 :(得分:0)
我认为你不想删除一些文件,只是告诉git不要跟踪它们。 为此,“git rm”确实是一个非常糟糕的主意。它也会从工作树中删除它们。
相反,您应该先将未跟踪的文件添加到.gitignore文件中,然后再将所有内容添加到存储库中。
git init
echo /assets > .gitignore
echo .htaccess >> .gitignore
git add .
git commit
至于恢复文件,我不知道......
答案 1 :(得分:0)
请尝试
git checkout master
看看它是否还原你的文件?
答案 2 :(得分:0)
我怀疑你做的是:
git add *
或者那些东西。该命令通常不包括您的“点文件”。 shell(可能是cmd,bash,zsh或者你正在使用的任何东西)定义了'*'如何进行通配。
然后你完成了剩下的工作,错误地认为你的所有文件都已添加。你没有检查'git status'的输出。
当你这样做时:
git rm file-you-do-not-want
您可能已忽略任何警告并尝试确保文件已消失。
在任何情况下,您最终创建的git提交都不包含您拥有的所有文件。将来,我建议您使用以下方法检查您拥有的内容:
git status
git gui
gitk
但是,如果文件之前存在于git中,那么您可能希望使用:
git reflog
向您显示之前提交的以前提交的列表。尝试迭代检查那些提交sha1,看看它们是否包含“缺失”文件。