Git说Rake表示致命:不会添加文件别名'但我可以手动完成吗?

时间:2014-09-01 18:13:19

标签: ruby macos git octopress

我有一个奇怪的问题。在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的大写和小写别名来重定向。

1 个答案:

答案 0 :(得分:0)

事实证明问题确实是OSX不区分大小写(我不知道这个!) - 这反过来又不允许git执行不同大小写的别名。

这与我在Windows上遇到的问题相同,也是我搬到Linux的原因。看起来我必须保持一个Linux VM方便处理我的静态博客(Octopress / Jekyll)的更新,因为我确实在两个网址上都有流量。

如果您正在阅读此内容并希望继续使用混合案例博客文章保留在OSX上,那么答案就是创建一个具有区分大小写的虚拟磁盘,永久安装它并将Octopress / Jekyll安装移动到它。请参阅:https://gist.github.com/dixson3/8360571