Git坑爹的大小写

 费德  2016/08/18 01:09  526 次

我们知道在linux下,文件是严格区分大小写的,file.php和File.php是两个不同的文件;而在windows下,不严格区分大小写,file.php和File.php则是同一个文件。(同一目录下)
今天晚上通过git把代码推送到服务器上,然后调试程序的时候,提示找不到Upload控制器,但是在本地却是正常的,这不科学啊。
顺着提示,把目光聚焦在Upload.php这个文件上。
首先,打开里面的代码,查看类名以及命名空间是否正常,结果正常。
然后登陆服务器,找到那个文件,发现它居然是小写的upload.php。。
283478539064700666.jpg
想起来,之前创建的名字叫upload.php,而后为了遵循命名规范,把它改成了Upload.php,并且提交推送到了git上。
可是git在windows下默认是不严格区分大小写的,也就是说更改文件的名字,对于git来说工作区是没有变化的。
那么有什么解决的办法么?
答案是有的,既然是默认不严格区分大小写,那我们就在操作的那台windows下设置严格区分大小写即可。

 git config core.ignorecase false

这里也顺带解答一个许多猿友在把七牛集成到tp中遇到的问题。

thinkphp 集成七牛sdk 一直出现Class 'Qiniu\Auth' not found

在我的开发过程中,也出现了这个问题。后来发现把代码推送到远程服务器是可以正常生成token的,而在本地的windows下,则无论怎么调试,出现这样的错误提示(单独的文件正常,但是集成会出现错误)。
所以推测应该是sdk和tp有一些不兼容。

 作者:费德

少年费德的奇幻漂流

本博客如无特殊说明皆为原创,转载请注明来源:Git坑爹的大小写

添加新评论