Git作为部署,开发和备份

时间:2012-09-23 20:43:56

标签: git workflow backup

我已经使用Git超过一年了,但我觉得我需要微调我的工作流程。希望你能帮忙!现在我有5台电脑:

3 DESKTOPS / DEVELOPERS :在我们完成所有工作的地方,当我们对更改感到满意时,我们会将它们推送到网络服务器。

WEBSERVER:网络服务器收到推送,然后它有一个钩子来自动检出它们(所以一旦我们从桌面推出它们就会直接生效)。这是所有计算机用于推送和拉出的中央单元。

备份:好的,我还没有这个,但我打算安装一个。首先需要一些建议。

关于这一切的一些问题:

  1. 当然,有时候图片等会直接通过网络服务器上传到Apache。除非我们在Web服务器上远程手动添加和提交,否则我们不会在桌面上接收这些文件。拥有一个每天晚上在网络服务器上自动添加和提交的cronjob是不是一个好主意?

  2. 我打算为网站安装备份服务器。首先我看着Rsync和rdiff-backup,但后来它打击了我,也许最好使用Git。那么我也将拥有所有提交的历史记录。这是个好主意吗?如果是这样,我只是用git pull做一个cronjob吗?

  3. 由于删除和缓存的图像,某些存储库变得非常大。在台式机和备份服务器上,我们有足够的硬盘驱动器,这不是一个大问题,但硬盘在网络服务器上非常昂贵。是否可以每晚自动删除和重置网络服务器上的所有已删除和缓存的文件,但仍然拥有桌面和备份服务器上的完整历史记录?

1 个答案:

答案 0 :(得分:2)

这些是很多问题。最重要的答案:不要将动态图像存储在git中。这不是git的设计目标,通常是个坏主意。这也回答了问题#3:不,这是不可能的。仅将图像存储在代码/站点中的git中。

关于备份:您的代码似乎不再需要备份。您已在不同位置的不同计算机上拥有4个完整的代码副本。除非您想要在防火掩体中进行另一次备份,否则我认为还有很大的改进空间:)。

如果您希望客户端服务器上的动态图像编写一个脚本,通过ftp同步它们。