如果这个问题已经得到解答,我深表歉意,但是,我无法确定是否有任何解决方案完全一致。
无论如何,我已经使用了几个月的 SourceTree 和 Bitbucket 帐户,现在一切都很好。 现在,突然间,当我进行更改并且 SourceTree 选中它时,它实际上想要“重新添加”项目中的每个文件,从 .gitignore 到 .project 文件,再到所有源文件和所有内容之间(我的意思是“重新添加”,如 SourceTree 中的“有一个带加号的绿色圆圈”)。
不用说,这让我有点害怕,虽然我相对使用 Git 比较舒服,但我不想在这里冒险。
有人有什么想法吗? 在上次更改和这次新更改之间,我没有做任何异常的事情(据我所知)。
提前致谢。
如果文件具有完全相同的二进制内容,那么这不会产生任何影响。文件应该具有相同的哈希值,结果内容也是如此。
您可能遇到了时间戳问题;有时这些可能不可靠。或者某些东西可能会用新的时间戳触及每个文件,这有时会导致该方法失败。如果您在 Windows 上运行,您可能需要设置
git core.trustctime false
来禁用时间戳检查。
根据我对完全相同问题的经验,解决方案是通过将整个存储库复制到安全的地方来备份整个存储库,将最后一个“良好”提交从源克隆到您的工作项目目录中,然后增量添加更改的文件,然后根据需要做出承诺,直到回到你需要的地方。基于这里的解决方案: https://xkcd.com/1597/