该文件naaclhlt2016.tex
在客户端或存储库中不是空的,但是 GitHub Desktop 显示“此文件为空”。这有什么可以解释的?
该文件naaclhlt2016.tex
存在于 GitHub 存储库中:
git status
:
当我尝试同步时它会产生冲突:
该文件naaclhlt2016.tex
在客户端或存储库中不是空的,但是 GitHub Desktop 显示“此文件为空”。这有什么可以解释的?
该文件naaclhlt2016.tex
存在于 GitHub 存储库中:
git status
:
当我尝试同步时它会产生冲突:
经过讨论,如果 tex 文件的更改仅在元数据方面(而不是实际文件内容更改,在 Latex 重新编译后),GitHub Desktop 可能无法显示任何更改。
由于即使 git status 列出了这个文件,它也没有检测到任何变化,它会退回到“这个文件是空的”消息。
除了@VonC 回复。
Git 桌面
取消选择所有更改的文件
仅选择“此文件为空”文件
尝试提交
Git 会显示一个提交错误,说你不能这样做。关闭模式后,Git 应该从更改列表中删除文件。
autoCRLF
当设置(例如 in ~/.gitconfig
)与文本文件中的换行符存储不匹配时,我会发现类似的结果。我有.php
在一台(Windows)机器上下载的文件,在 Apache 文件夹中压缩和解压缩,然后我将它们复制到克隆的存储库中,有时它会抱怨每个文件都已更改。存储在 GitHub 上的文件似乎已经存储了CRLF
(它们更大)。
我一直无法让 GitHub Desktop 处理我修改过的文件。autoCRLF=true
我已经尝试使用、autoCRLF=input
和进行完整的全新克隆autoCRLF=false
,但 GitHub Desktop 要么将文件报告为空,要么每行都已更改,具体取决于 autoCRLF 设置。
我相信这完全是因为它们与文件中的 CRLF 一起存储在 GitHub 上,并且 GitHub Desktop 似乎假设autoCRLF
管理(仅)签出的文件,并且不会与GitHub 上的 CRLF 进行比较,即使使用autoCRLF=false
. 它们是逐字节相同的文件,但它们只是 LF,它要么抱怨每一行都发生了变化,要么抱怨文件是空的。
如果我git diff
对其中一个文件执行操作,在这种情况下feed.php
,我会看到:
warning: CRLF will be replaced by LF in API/events/feed.php.
The file will have its original line endings in your working directory.