Del*_*gan 7 git project-management greasemonkey github userscripts
我正在开发Firefox的用户脚本,所以我使用GreaseMonkey.而且,为了方便开发,我使用git来更新我的代码的不同版本.
现在,让我试着解释一下这个问题.
当我从我的本地git目录向GreaseMonkey添加userscript时,然后在我的Firefox配置文件的gm_scripts文件夹中创建新文件.
GreaseMonkey使用这些文件作为源而不是我的git目录,所以如果我想修改我的代码并测试一些东西,我必须更改gm_scripts中的文件.这意味着我无法提交修改,我首先要将文件从gm_scripts复制到我的git目录.这真的很不方便.
还有另一种解决方案.我也可以从我的git目录修改脚本,然后使用指向这些本地文件的书签将其重新安装到GreaseMonkey.但再一次,这根本不方便.
我认为第三个是将gm_scripts中的文件夹定义为我的git目录.不幸的是,我的项目包含许多文件,我订购到文件夹中,我想保持它干净.但是向GreaseMonkey添加用户脚本可以从其文件夹中提取所有文件.

而且,我的git项目不仅包含userscript文件夹,还有一些其他的东西.因此,将gm_script的目录声明为git的源代码可能不是一个好主意,将许多文件放在gm_scripts中,而它们与用户脚本无关,这不是一个好方法.并且被迫必须在我的Firefox配置文件深处丢失的文件夹中工作是不对的.
我想知道是否有一种技术可以高效,轻松地在包括GreaseMonkey和git在内的项目上工作.
您可以链接必要的文件!
Windows(提升的命令提示符):
mklink <<gmfile>> <<gitfile>>Unix/Linux:
ln -s <<gitfile>> <<gmfile>
感谢来自Greasespot讨论组的 Enkidu 的回复!
使用 Windows 和一个.bat文件,此代码用于将 git 文件夹中的所有文件链接到 Greasemonkey 文件夹(如果路径中存在空格或两个文件具有相同的名称,则可能会出现错误)。
echo off
set git_dir=C:\path\to\your\git\folder
set gm_dir=C:\path\to\your\greasemonkey\userscript\folder\
for /R %git_dir% %%G IN (*) do (
echo Y | del %gm_dir%%%~nxG
mklink %gm_dir%%%~nxG %%G
)
Run Code Online (Sandbox Code Playgroud)