我正在把这个.NET商店从svn转移到git,并指出了一些我想解决的辅助问题,然后再进行切换。
我特别要问的一个问题是行尾强制执行。默认情况下,用于Windows的git使用“ checkout crlf,commit lf”安装,对于一堆仅由crlf结尾组成的源(据我所知),它不起作用。
我不知道我会盲目地信任任何给定的开发人员即使在给定指令的情况下也能正确配置此功能,因此我正在考虑以下一项(或两项),但很好奇这里是否有人走了另一条路。
- 一个预提交钩子,用于检查是否有任何lf行的结尾(或可能是所有lf行的结尾),并在该事件中拒绝。
- 分发给开发人员的安装脚本,使用“原样,原样”填充全局配置。
PS在撰写本文时,我想到从svn到git的初始转换可以采用默认方式,而且只要人们坚持使用默认值,那么转换也将是无缝的。曾经是.NET商店中使用git的开发人员,并且安装了非默认的“按原样,按原样”的git,所以我也在那里创建了自己的问题(他们在到达之前就已滚动默认值) 。所以我仍然倾向于某种执行机制。