为了帮助支持我们的客户并使我们的工作更轻松,我们的支持团队使用多种不同的语言创build和维护大量小型(通常<50行)的专有脚本,以简化正常的任务。 这些文件目前存储在许多地方,从内部维基,到人们自己的硬盘,内部服务器等上的.txt文件,追踪每个版本的最新版本变得越来越困难。
实际上,这些需要保持分离,彼此之间没有足够的联系以便放入共享的源代码库,但是不足以保证为每个代码创build单独的RCS存储库。
您是否知道任何适合pipe理大量这些脚本的软件或实践? 这将理想地提供以下function:
如果没有标准的软件或标准的做法,我想这只是简单的创build一些简单的东西。
我不同意你的观点,即脚本对版本控制不够重要。 它们通常非常重要(例如,映射networking驱动器的login脚本),就像你说的,也经常只是在没有任何版本历史logging的服务器上生活,所以如果你搞砸了,你就搞砸了。
我们将所有的脚本保存在Subversion版本库中,这对我们来说非常有效。 好处很明显。
版本控制系统非常轻便,您可以搭载另一个系统(如果您有内部开发人员,在服务器上创build存储库),或者创build运行轻量级Linux发行版的虚拟机(如果需要的话)。
另外,最近在Server Fault博客上有一篇关于这个的文章。 检查出来 。
在过去类似的情况下,我在$scm_of_choice创build了一个仓库,每个相关组( admin_scripts , sql_scripts等)都有子目录。
或者,根据您正在讨论的脚本的数量,可以为每个问题域创build一个存储库。
因为你想跟踪的版本是很自然的使用版本控制系统 – 有几个 – svn,git等
对于networking访问,您可能需要安装一些额外的软件,但可以很容易地完成(对于svn,您可以安装一个启用ssl的服务器,git使用ssh)