我应该如何在同一路径中控制(排序)不相关的脚本?

Ryn*_*ant 6 git version-control powershell mercurial dvcs

我已经开始使用版本控制来更好地管理我的PowerShell代码的修订版.我决定使用Mercurial有三个主要原因:

  1. 作为DVCS,它不需要服务器.
  2. 如果我愿意,我可以免费在线存储私人存储库(bitbucket.org)
  3. 使用它似乎比Git更简单.

Mercurial适用于版本化PowerShell模块,因为每个模块都包含在自己的目录中.但是,我有一些不属于模块的脚本,但我仍然希望对它们进行版本控制.这些脚本位于添加的".\ Scripts"目录中,$env:PATH因此我可以从命令行轻松运行它们.由于这些脚本并不真正相互关联,因此为Scripts目录创建单个存储库没有多大意义.

我该如何编写单个脚本?

我想到了以下几种选择:

  • 为每个脚本/相关脚本创建子目录.
  • 使用临时存储库,直到脚本"稳定",然后将脚本添加到主"Scripts"目录,并将脚本集合版本化为一个.这将减少引入"Scripts"存储库的更改集的数量.

有没有更好的处理单个文件版本的工具?使用Mercurial版本化单个文件有更好的方法吗?还有其他想法吗?

man*_*lds 10

基于其功能的文件分组应基于

1)姓名.

2)他们所在的文件夹.

只需为脚本命名.如果有多个相关脚本将它们分组到一个文件夹中.每个文件夹有一个脚本是没有意义的.您最终得到的文件夹数与脚本几乎相同.

所有这些都在一个存储库中.通常,人们在一个回购中有多个项目.创建多个repos,特别是对于少量文件意味着很多开销.如果脚本不"稳定"使用分支.这就是它们的用途并将它们合并.

不要担心回购中有多少"变更集"!

PS:可能看起来有些自以为是,但对于你提出的问题,没有真正对错的答案.