gpt4 book ai didi

linux - Git/Veracrypt EOL hell - 无法丢弃修改过的文件

转载 作者:太空宇宙 更新时间:2023-11-04 03:33:03 31 4
gpt4 key购买 nike

veracrypt 是否在内存中进行任何类型的文件缓存,这可能会阻止对我的 git 配置文件的更改被识别?

长版本:我在与 Windows 共享的 veracrypt 分区上有一个存储库。在尝试在我的存储库中强制执行 EOL 时,我看到文件或多或少任意设置了 EOL。当对我的 .gitattributes 文件进行微小更改时,我会将此更改 merge 到一个分支上,然后突然我的新分支充满了仅包含 EOL 更改的文件。

我主要使用 SmartGit 或 cmd 行(git v 1.8.3.1)在 Linux 上工作。我尝试在全局和存储库配置文件中删除 autocrlf 和 safecrlf 或设置为 false ,以防它们造成混淆。我尝试删除我的 .gitattributes 文件,或设置

* binary

完全阻止任何转换。

我已经重置了数十次,并删除了我的本地存储库并重新克隆。但我无法删除这些修改过的文件

git rm --cached -r .
git reset --hard

下面是我的 .gitattributes

# Auto detect text files and perform LF normalization
* text=auto

# Specify LF file endings for coding files
*.txt text eol=lf
*.c text eol=lf
*.cpp text eol=lf
*.h text eol=lf
*.py text eol=lf
*.kl text eol=lf
*.json text eol=lf

# Specify windows-only CRLF endings
*.bat text eol=crlf
*.vcproj text eol=crlf
*.sln text eol=crlf

# Specify binary files - do not modify these files, dammit!
*.so binary
*.dll binary
*.lib binary
*.pdb binary
*.exp binary
*.exe binary

我的主要问题是,一些(不是全部).so 符号链接(symbolic link)在一个特定分支中显示为已修改 - 寻找所有世界,就像它们已被转换一样。这始终发生在我的最新分支中,但不是较早的分支中。在当前的疯狂中,我的最后一次 merge 添加了 *.cpp 标签,它立即将我的一些(不是全部)*.py 文件转换为 Windows 行结尾。

有人经历过这种不可靠的情况吗?此版本的 git 支持 .gitattributes 文件吗? veracrypt 或 NTFS 分区是否让我感到困惑?

我已经花了一个星期的时间来完成一项本来应该是微不足道的任务,但根本无法理解 git 是如何决定其 EOL 策略的。

最佳答案

我仍然不知道到底出了什么问题,但我重新创建了存储库,只要我从不在 Windows 中触摸(以只读方式使用它)它似乎就可以了。

关于linux - Git/Veracrypt EOL hell - 无法丢弃修改过的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32563667/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com