我在服务器和本地PC上有一个网站。该网站的一部分存储在BitBucket上作为存储库。该网站包含以下文件和文件夹:
.htaccess
uploads/
resources/
index.php
.htaccess
包含www
目录的绝对路径。因此,我的本地PC有一个不同的.htaccess
文件作为我的服务器。此外,我不想在本地PC和服务器之间同步uploads
文件夹。其余文件应该同步。
我发现here我可以通过添加包含
的.gitignore
文件来忽略它们
.htaccess
uploads/
此外,被忽略的文件也不在我的存储库中。
由于upload
文件夹和.htaccess
不在我的存储库中,我现在害怕在使用Git命令时意外删除它们。
唯一可能删除它们的git命令是
是否正确git clean -dfx
还是有其他我不知道的Git命令?
此外,是否可以在使用git clean -dfx
?
答案 0 :(得分:1)
是的,这就是我在删除dry-run
之前首先使用-n
(-n
)模式运行git clean的原因。
git clean -ndx
是否可以在使用git clean -dfx?
删除数据时恢复数据
不使用git本身:它取决于您的操作系统(如Recuva for Windows)
但通常情况下,私人文件(未跟踪,版本化)不应受到影响购买git checkout
或git reset --hard
。
话虽这么说,使用管理员模式(在Windows中),您可以建立符号链接到位于外面的<{1}}文件或.htaccess
文件夹您的Git仓库:
upload
这样,无论你的Git仓库发生了什么,你的私人数据都是安全的。
答案 1 :(得分:0)
通过将文件放在.gitignore
中,您告诉Git该文件是可有可无的。从本质上讲,您可以在需要名称时随时删除它,例如,必须创建目录来代替被忽略的文件。
git clean
不唯一允许Git删除.gitignore
中提到的文件的场合。我认为git merge
也会删除被忽略的文件。
即使今天没有,.gitignore
中条目的当前定义是它们并不重要。 Git没有指定可忽略和珍贵的文件的工具。