如何使用Git管理我的greasemonkey用户脚本(以便在GitHub中托管它们)

时间:2016-08-02 22:10:40

标签: git github greasemonkey userscripts

我想使用Git来促进my userscripts(21)的发展。另外,我也希望将它们托管在GitHub中。 (在Windows 10中使用Greasemonkey和Firefox)

所以,我的问题是:使用Git管理我的用户脚本的建议方法是什么,以便将它们托管在GitHub中?

  • 保留一个单独的文件夹(例如c:\my_scripts,这将是我的repo文件夹)包含我的userscripts文件的副本
    即每次我更改我的一个用户文件(位于gm_scripts)时 我必须手动将其从gm_scripts\script_subfolder复制到my_scripts

  • 将我的所有用户脚本放在同一个单独的文件夹(我的repo文件夹)中 并将它们链接到gm_scripts文件夹(在.bat文件中使用mklink -symbolic links),正如我在this answer 中读到的那样?

  • 只创建一个包含gm_scripts内容的存储库?
    (在gm_scripts内,除了我的21个用户脚本之外,我还安装了许多其他脚本,我必须将其包含在我的.gitignore文件中)
  • 还是有更好的方式我想念

我注意到了许多用户脚本的两位作者的回购:@Mottie和@jerone 谁有他们的许多用户脚本托管在GitHub, 但他们遵循不同的方法:
Mottie's userscripts 都位于repo的根文件夹中(只是.js文件,没有子文件夹),(screenshot
虽然jerone's userscripts位于回购(screenshot)中的各自位于其自己的子文件夹中。

我的猜测是,Mottie将所有用户脚本放在同一个单独的文件夹(即回购邮件)中,并将链接gm_scripts文件夹相对应, 而jerone或者只是保留一个单独的文件夹作为回购,包含他的脚本副本,
或者他的回购包含 gm_scripts文件夹
(但是,jerone的.gitignore不包含应忽略的gm_folder中那些文件的条目,例如.db.wal.shm,{{1所以,我不确定是不是这样)

1 个答案:

答案 0 :(得分:4)

我(以上称为@jerone的用户)实际上有两个我保持同步的文件夹:GreaseMonkey gm_scripts文件夹和其他位置的签出repo文件夹。

GitHub上的当前文件夹结构就在那里,因为我想在离线时的Userscripts.org之前备份我的脚本。所以我只是从gm_scripts文件夹中复制粘贴我的脚本(带文件夹)。另外,因为我之前使用了一些@require,将它们保存在相应的文件夹中。

我没有将我的gm_scripts文件夹链接到git,因为每个用户脚本都使用git分支。与最新大师一起重新分支的麻烦是一个原因。另一个原因是您无法同时处理两个功能分支。

在处理修复程序或新功能时,我当然在gm_scripts文件夹中工作。如果我对实时用户脚本更改感到满意,我会在提交更改之前使用WinMerge将更改同步到我的结帐仓库文件夹。

.gitnore文件存在,因为我使用Visual Studio更新脚本,但很久以前我已经更改为Atom