你们用什么来部署应用程序并跟踪它们在生产环境中的文件?我的意思是,如果文件没有直接在服务器上更改,如何进行跟踪?谢谢。
我已经使用Git追踪HPC生产集群上的/usr/local已经3年了。
对于2.2G的文件(主要是二进制文件),使用git log -n 1; git status
命令需要1分钟的时间才能在NFS上检查文件是否在部署后被修改。如果在本地磁盘上进行扫描,只需要几秒钟的时间。如果发生更改,我可以看到哪些文件以及它们的差异(如果不是二进制文件)。
我不会通过服务器上的版本控制系统来跟踪这些文件。
通常情况下(除了简单的Web应用程序部署),在生产服务器上,您不需要任何“不必要”的工具,只需要运行应用程序所需的工具即可(例如:肯定不需要版本控制系统)。
版本控制系统存在于预生产环境中,供您获取特定标签以进行部署。
但是,一旦使用该标签获取文件,则会进行部署过程:
因此,我会设置一个外部作业(即不直接由版本控制系统管理)来比较版本化文件和相应的部署文件。