我想使用 Git 以促进 my userscripts 的开发(21).另外,我也希望将它们托管在 GitHub 中。 (在 Windows 10 中使用 Greasemonkey 和 Firefox)。
因此,我的问题是:使用 Git 管理我的用户脚本的建议方法是什么,以便将它们也托管在 GitHub 中?
保留一个单独的文件夹(例如
c:\my_scripts
,这将是我的 repo 文件夹)包含我的用户脚本文件的副本 ,
即每次我更改我的用户脚本文件之一(位于gm_scripts
)
我必须手动将它从gm_scripts\script_subfolder
复制到my_scripts
吗?将我所有的用户脚本放在同一个单独的文件夹(我的 repo 文件夹)中,
并将它们链接到gm_scripts
文件夹(在 .bat 文件中使用 mklink -符号链接(symbolic link)-),正如我在 this answer 中所读到的那样?- 仅创建一个包含我的
gm_scripts
内容的存储库?
(在gm_scripts
中,除了我的 21 个用户脚本之外,我还安装了许多其他脚本,我必须将它们包含在我的.gitignore
文件中) - 或者有什么我想念的更好的方法?
我注意到许多用户脚本的两位作者的 repo :@Mottie 和@jerone
他们将许多用户脚本托管在 GitHub 上,
但他们遵循不同的方法:
Mottie's userscripts 都位于存储库的根文件夹中(只有 .js 文件,没有子文件夹),( screenshot )
同时jerone's userscripts位于 repo 中各自的子文件夹中 ( screenshot )。
我的猜测是 Mottie 将他所有的用户脚本都放在同一个单独的文件夹中(这是 repo),并将它们链接到 gm_scripts
文件夹,
而 jerone 要么只是保留一个单独的文件夹作为存储库,其中包含他的脚本副本,
或者他的 repo 包含 gm_scripts
文件夹
(但是,jerone 的 .gitignore 不包含 gm_folder 中应该忽略的那些文件的条目,例如 .db
、.wal
、 .shm
、config.xml
等。所以,我不确定是否是这种情况)。
最佳答案
我(上面的用户称为 @jerone)实际上有两个我保持同步的文件夹:GreaseMonkey gm_scripts
文件夹和 checkout repo不同位置的文件夹。
GitHub 上的当前文件夹结构在那里,因为我想在离线时备份我的脚本,就在 Userscripts.org 之前。所以我只是从 gm_scripts
文件夹中复制粘贴了我的脚本(带有文件夹)。也因为我之前用过一些@require
,把它们放在对应的文件夹里。
我没有将我的 gm_scripts
文件夹链接到 git,因为每个用户脚本都使用 git 分支。使用最新的 master 重新设置分支的麻烦是原因之一。另一个原因是您不能同时在两个功能分支上工作。
在处理修复或新功能时,我当然会在 gm_scripts
文件夹中工作。当我对实时用户脚本更改感到满意时,我使用 WinMerge在提交更改之前将更改同步到我的 checkout repo 文件夹。
.gitnore
文件在那里,因为我使用 Visual Studio 更新脚本,但我已更改为 Atom很久以前。
关于git - 如何使用 Git 管理我的 greasemonkey 用户脚本(以便将它们托管在 GitHub 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38731278/