如何阻止GitHub网页编辑器在文件末尾自动添加换行符
解决方案
问题原因
Git 默认将文件末尾的单个换行识别为标准文本格式,GitHub 网页编辑器内置了自动补全文件尾换行的逻辑,且没有公开设置项可以关闭。当你仅删除末尾换行提交时,Git 会判定该操作不属于有效变更,因此弹出无变更提示。
以下方法全部仅需使用 GitHub 网页编辑器操作,无需用到命令行或本地克隆仓库:
方法1:和其他有效变更一同提交
如果本次本身有其他内容需要修改,先完成所有常规修改操作,再拉到文件末尾删除自动添加的换行,最后直接提交即可。此时存在其他可识别的变更,Git 会同步保留你删除末尾换行的操作,不会触发无变更提示。
方法2:搭配临时无关变更提交(仅需删除末尾换行时用)
如果本次没有其他内容需要修改,仅要去掉多余的末尾换行,可以先做一处项目规范允许的、不影响功能的微小无关修改,比如在注释末尾加一个空格、在空行处加一个无意义的空格,同时删掉文件末尾的换行,把两个操作一起提交。
提交成功后再次打开网页编辑器,把刚才加的无关空格删掉,单独提交这一次修改即可,两次操作后就能去掉末尾的多余换行。
方法3:申请项目全局配置(一劳永逸)
可以联系项目维护者在仓库根目录新增 .gitattributes 文件,添加对应配置关闭全局的换行自动修正逻辑,配置生效后所有贡献者用网页编辑器提交都不会再被自动补全末尾换行,不需要再单独处理。
内容的提问来源于stack exchange,提问作者Travis Reed
相关产品推荐
相关产品推荐

