这种情况反复发生,非常烦人。我将一些PHP代码上传到客户端的服务器。几个星期过去了。他们要求进行更改,然后重新下载代码,因为他们已经做了一些更改。但是,我上次看到它时,我的代码过去整洁有点,现在各处都添加了额外的空白行。所以现在我在某些代码之间有两行空格,它现在有3个。我有一堆线条粘在一起,因为它们是同一个循环或类似的一部分,它们都散落在现在,并且没有办法区分它们。
是否有任何程序/实用程序可以解决此问题?
答案 0 :(得分:7)
以二进制模式而不是ascii上传。 Ascii模式正在将所有换行符(unix行结束符)更改为回车符+换行符(Windows行尾字符)。
答案 1 :(得分:1)
当您使用空格时,您可能还在使用选项卡时遇到其他编辑器的问题(您正在使用空格,对吧?)。在Linux / OSX和Windows上的开发人员之间共享源代码时,我遇到过类似的问题。
答案 2 :(得分:1)
我敢打赌,这是因为系统试图将在Windows系统中创建的文本文件转换为Unix / Linux系统使用的文件(又返回)。
Windows同时使用回车符和换行符,我认为Unix只使用换行符(或者它是回车符)。
我使用Ultra Edit作为我的主文本编辑器(不是说Emacs和vi不统治:o)它只有这种东西有DOS模式和Unix模式。
答案 3 :(得分:1)
强制您的客户端以二进制模式传输所有文件。 当您在文件中包含unicode文本时,这也很有用,您永远不会知道文本模式可能会做出什么假设!
答案 4 :(得分:1)
猜测,我会说您正在使用Unix / Max系统进行开发,但客户正在Windows系统上运行(反之亦然)。我猜也是你在二进制模式下上传/下载你的文件。 Windows编辑器可能将Unix LF转换为LF / CR对,您的编辑器将其视为两个新行。 如果您以ASCII模式上传和下载,文件将在两种格式之间自动转换。