我想使用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所以,我不确定是不是这样)。
答案 0 :(得分:4)
我(以上称为@jerone的用户)实际上有两个我保持同步的文件夹:GreaseMonkey gm_scripts
文件夹和其他位置的签出repo文件夹。
GitHub上的当前文件夹结构就在那里,因为我想在离线时的Userscripts.org之前备份我的脚本。所以我只是从gm_scripts
文件夹中复制粘贴我的脚本(带文件夹)。另外,因为我之前使用了一些@require
,将它们保存在相应的文件夹中。
我没有将我的gm_scripts
文件夹链接到git,因为每个用户脚本都使用git分支。与最新大师一起重新分支的麻烦是一个原因。另一个原因是您无法同时处理两个功能分支。
在处理修复程序或新功能时,我当然在gm_scripts
文件夹中工作。如果我对实时用户脚本更改感到满意,我会在提交更改之前使用WinMerge将更改同步到我的结帐仓库文件夹。
.gitnore
文件存在,因为我使用Visual Studio更新脚本,但很久以前我已经更改为Atom。