我有一个奇怪的问题。在OS X上使用Octopress,它使用Rakefile(ruby)来设置部署文件夹,并使用独特的Git存储库结构。
问题在于这一行:
system "git add -A"
...在Rakefile中生成此错误:
fatal: Will not add file alias 'blog/{obmitted-dir-name}/index.html' ('blog/{OMITTED-DIR-NAME}/index.html' already exists in index)
好的,所以这听起来像是一个套管问题,我应该发出:
$ git config core.ignorecase false
不,仍然是同样的错误,我已经确认它现在设置为false。那么我发出:
$ git config --global core.ignorecase false
仍然没有。
现在对于奇怪的部分...我可以手动将目录更改为我的_deploy/
目录并手动发出命令:
_deploy/$ git add -A
没问题!
我已经多次验证过...... Ruby Rakefile无法发出git add -A
,而我可以手动执行。
我甚至直接在该步骤停止了脚本并手动完成。
Ruby有不同的Git环境吗?
即使设置了git标志,OSX是否不区分大小写?如果是这样,那就是我的问题,我永远无法从OSX部署(就像我无法从Windows部署):我有404s的大写和小写别名来重定向。
答案 0 :(得分:0)
事实证明问题确实是OSX不区分大小写(我不知道这个!) - 这反过来又不允许git执行不同大小写的别名。
这与我在Windows上遇到的问题相同,也是我搬到Linux的原因。看起来我必须保持一个Linux VM方便处理我的静态博客(Octopress / Jekyll)的更新,因为我确实在两个网址上都有流量。
如果您正在阅读此内容并希望继续使用混合案例博客文章保留在OSX上,那么答案就是创建一个具有区分大小写的虚拟磁盘,永久安装它并将Octopress / Jekyll安装移动到它。请参阅:https://gist.github.com/dixson3/8360571