8

迁移到 Windows 后,我使用 msysgit 及其附带的 bash shell,这对我来说效果很好。但我有问题:我们的 ant 构建过程不会在那个 shell 中运行,我想使用 Cygwin 的 xterms 而不是 Windows 命令窗口,因为终端兼容性不足以运行我想要的所有其他东西那个窗口,等等。

实际上,我已经在 Windows 命令 shell 中坚持使用 msysgit,这样我就不必使用单独的窗口来构建,但这会带来更多问题:缺少cd- 和文件完成正在杀死我,大多数我想通过管道传输的命令不存在,等等。

因此,如果我切换到使用 Cygwin 的 git,或者更糟糕的是,在不同时间同时使用这两种方式,行尾会咬我吗?Cygwin 的 git 是否会期望一切都会发生\n并认为它正在看到变化,因为 mSysGit 在结帐时转换为\r\n?Cygwin 的 git 是否会检查\n并混淆我的 Windows Eclipse,我确信这一切都是如此\r\n

4

7 回答 7

10

最简单的方法是将任何 git(msysGit 或 Cygwin git)设置为忽略 crlf 样式。

core.autocrlf=false

这样,您就没有蚂蚁不需要的冲突。

于 2009-03-27T17:37:36.477 回答
3

Will Cygwin's git check out as \n and confuse my Windows Eclipse, which I'm sure wants everything to be \r\n?

Most modern applications (including Eclipse) are perfectly capable of using \n only.

There are a few annoying exceptions (e.g. email protocol), but in most cases you can stick to just using \n for everything.

So, as VonC says, just disable the autocrlf setting and it'll be fine.

于 2009-03-27T17:45:31.560 回答
2

从这篇文章 - “在 Windows 上使用 Msysgit 设置 GIT 服务器” - 一位用户建议了这个链接 - http://www.timdavis.com.au/git/setting-up-a-msysgit-server-with-copssh-on-视窗/

我使用此设置并在 Windows for Me 上完美运行。

希望能帮助到你

于 2009-10-05T12:35:26.943 回答
1

Actually, just sticking with msysGit won't save you. I had one issue where every single source file showed as changed because of the line-ending issue when using different versions of msysGit. Setting core.autocrlf in the git config file fixed it.

于 2009-03-27T18:00:37.187 回答
0

我对行尾感到头疼。我正在使用 cygwin git,它总是将一些新签出的文本文件报告为“已修改”。当我将“core.autocrlf”从“true”更改为“input”时,15 个文件中有 10 个从修改列表中消失了,其余 5 个在我将“core.autocrlf”设置为“false”后消失了。

由于声誉低,我不能投票支持 VonC 的解决方案,但我会说它对我有用。

于 2010-05-25T07:59:15.350 回答
0

在调试了一段时间后,我为我的情况解决了这个问题。我以迂回的方式从 Linux 分区复制了 id_rsa 文件,将行尾保留为 LF (Unix) 格式。在 eclipse 中打开文件并将行尾转换为 Windows 修复了这个问题。另外,我按照以下说明将 GIT_SSH 设置为 Plink(来自 Putty):http: //www.mainelydesign.com/blog/view/git-plink-for-ssh-on-windows

于 2011-11-02T19:09:10.050 回答
0

我在 msysgit 中将 core.autocrlf 设置为 false 并采用默认安装的任何 cygwin。

由于文件模式的明显变化(每个文件中的 755 似乎更改为 644),我在使用 cygwin 工具和 msysgit 附带的 mingw 工具从命令提示符签出时遇到了问题。这似乎是关于可执行位的问题。git reset 没有帮助。

但是,从 msysgit GUI 窗口进行初始克隆并没有产生这个问题,而且我现在似乎可以从它自己的 bash shell 或命令提示符中自由使用 cygwin,或者从它的 bash shell 中使用 msysgit。换句话说,一切似乎都很快乐。

因此,最重要的是,如果您看到每个文件似乎都发生了变化,并且行尾似乎不是问题的原因,请尝试从 GUI 中签出。

于 2010-07-30T15:18:33.640 回答