我使用Xcode作为我的开发IDE来编辑我正在处理的项目的一些网页和CSS。为了启用实时重新加载功能,我正在使用ruby' guard'使用' livereload'配置的程序插件,效果很好。
然而,Xcode似乎将当前正在编辑的文件保存到标题为"(由Xcode保存的文档)"在与原始文件相同的目录中。当然,这会不断触发警卫脚本并重新加载浏览器。
我尝试了各种忽略选项,但似乎没有任何工作......这是我当前的保护文件...我可以添加或更改它以忽略Xcode目录,无论它在监视目录下的哪个位置?
guard 'livereload', grace_period: 0.5 do
interactor :off
directories %w(resources/img resources/devel)
ignore %r{\(A\sDocument\sBeing\sSaved\sBy\sXcode\)}
compiled_extensions = {
css: :css,
js: :js,
}
static_extensions = {
html: :html,
png: :png,
gif: :gif,
jpg: :jpg,
jpeg: :jpeg,
}
compiled_exts = compiled_extensions.values.uniq
watch(%r{.+\.(#{compiled_exts * '|'})$})
static_exts = static_extensions.values.uniq
watch(%r{.+\.(#{static_exts * '|'})$})
end
我认为在检测到文件被更改时可能会有一些方法运行一些Ruby代码,并且可能检查目录然后如果忽略不起作用......但我从未在Ruby中编码并且很难让现场重新加载后卫脚本首先工作。
答案 0 :(得分:0)
实际上,问题不在于guard
,而在于Apple的版本控制文件保存,我没有意识到网络驱动器的启用...版本控制功能不起作用。叹息。
在终端中执行以下命令,关闭了Xcode的版本控制(内部称为持久性?)功能,这解决了我的问题:
defaults write com.apple.dt.Xcode ApplePersistence -bool False
我也不需要为源代码启用持久性,因为我已经使用了版本控制。
我回答了我自己的问题,以防有人遇到同样的问题。