如何使用git正确使用GreaseMonkey脚本?
我正在为Firefox编写一个userscript,所以我使用GreaseMonkey。 此外,为了便于开发,我使用git来更新我的代码的不同版本。
现在,让我试着解释这个问题。
当我从我的本地git目录添加GreaseMonkey userscript时,我的Firefox配置文件的gm_scripts文件夹中将创建新文件。
GreaseMonkey使用这些文件作为源代码而不是我的git目录,所以如果我想修改我的代码并测试一些东西,我必须更改gm_scripts中的文件。 这意味着我不能提交修改,我首先必须将文件从gm_scripts复制到我的git目录。 这真的很不方便。
还有另一种解决方案。 我也可以从我的git目录修改脚本,然后使用指向这些本地文件的书签将其重新安装到GreaseMonkey。 但再一次,这根本不方便。
我想第三个是将gm_scripts内的文件夹定义为我的git目录。 不幸的是,我的项目包含了许多文件,我将它们放入文件夹中,而且我想保持清洁。 但是将一个userscript添加到GreaseMonkey可以使所有文件从其文件夹中提取出来。
而且,我的git项目不仅包含userscript文件夹,还有其他一些东西。 因此,将gm_script的目录声明为git的源代码可能不是一个好主意,将许多文件放在gm_scripts中,而与userscript无关的方法并不是一个好方法。 被迫在我的Firefox配置文件深处丢失的文件夹中工作是不对的。
我想知道是否有一种技术可以高效且轻松地在包括GreaseMonkey和git的项目上工作。
你可以链接必要的文件!
Windows(提升命令提示符): mklink <<gmfile>> <<gitfile>>
Unix / Linux: ln -s <<gitfile>> <<gmfile>
感谢Greasepot讨论小组的Enkidu对他的回应!
使用Windows和.bat
文件,此代码用于将您git文件夹中的所有文件链接到Greasemonkey文件夹(如果路径中有空格或者其中两个文件具有相同名称,则可能会有错误)。
echo off
set git_dir=C:pathtoyourgitfolder
set gm_dir=C:pathtoyourgreasemonkeyuserscriptfolder
for /R %git_dir% %%G IN (*) do (
echo Y | del %gm_dir%%%~nxG
mklink %gm_dir%%%~nxG %%G
)
链接地址: http://www.djcxy.com/p/85859.html
上一篇: How to correctly work on a GreaseMonkey userscript using git?