如何忽略带有 ruby guard 的目录以进行 livereload?
How to ignore directory with ruby guard for livereload?
我正在使用 Xcode 作为我的开发 IDE 编辑一些网页和 css 我正在从事的项目。为了启用实时重新加载功能,我正在使用配置有 'livereload' 插件的 ruby 'guard' 程序,它运行良好。
但是,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 中编码,而且让实时重载保护脚本首先工作就已经够棘手了。
实际上,问题不在于 guard
,而在于 Apple 的版本控制文件保存,我没有意识到它已为网络驱动器启用...版本控制功能不起作用。叹息
在终端中执行以下命令仅关闭 Xcode 的版本控制(内部称为持久性?)功能,这解决了我的问题:
defaults write com.apple.dt.Xcode ApplePersistence -bool False
我也真的不需要为我的源代码启用持久性,因为我已经在使用版本控制了。
我回答了我自己的问题,以防有人遇到同样的问题。
我正在使用 Xcode 作为我的开发 IDE 编辑一些网页和 css 我正在从事的项目。为了启用实时重新加载功能,我正在使用配置有 'livereload' 插件的 ruby 'guard' 程序,它运行良好。
但是,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 中编码,而且让实时重载保护脚本首先工作就已经够棘手了。
实际上,问题不在于 guard
,而在于 Apple 的版本控制文件保存,我没有意识到它已为网络驱动器启用...版本控制功能不起作用。叹息
在终端中执行以下命令仅关闭 Xcode 的版本控制(内部称为持久性?)功能,这解决了我的问题:
defaults write com.apple.dt.Xcode ApplePersistence -bool False
我也真的不需要为我的源代码启用持久性,因为我已经在使用版本控制了。
我回答了我自己的问题,以防有人遇到同样的问题。