请教线上项目自动化 git 怎么实施?

2016-06-27 14:14:44 +08:00
 chaegumi
我有两台服务器,

服务器 1 :网站程序 站点目录

服务器 2 : git 服务器

我现在是本地机开发

想要的效果就是自动 git 备份整个服务器 1 的站点目录

我现在的想法是:本地机开发完,把程序更新到服务器 1 ,那我能用脚本去实现自动 git 备份服务器 1 到服务器 2 的版本库去吗?

想法对不对?还是不是这样做的。是别的方式
4069 次点击
所在节点    程序员
28 条回复
clino
2016-06-27 14:22:20 +08:00
不应该是开发完 push 到 git 服务器,然后生产环境从 git 服务器更新到最新版本吗?
bazingaterry
2016-06-27 14:23:25 +08:00
难道不应该是把 commit 推到 git 服务器,然后利用 git hook 或者持续部署之类的工具实现线上自动更新?
chaegumi
2016-06-27 14:26:46 +08:00
@clino
@bazingaterry 所以我变成是反着来了?我也搜索到过你们这种说法
chaegumi
2016-06-27 14:27:21 +08:00
不对啊,那生产环境下产生的 比如 用户图片上传这些怎么搞
Citrus
2016-06-27 14:27:59 +08:00
@chaegumi 你的想法确实是反的,但是没人这么用。大家都是用 Git Hook 的方式往生产同步,而不是反过来。
chaegumi
2016-06-27 14:28:16 +08:00
我其实主要是想要把用户的上传的图片什么的类似的一些动态数据 git 起来
Citrus
2016-06-27 14:28:48 +08:00
@chaegumi 用户上传的图片就不应该传到 Git 上。 Git 是用来管理 代码 版本 的工具,而不是给你备份数据用的工具。
chaegumi
2016-06-27 14:29:57 +08:00
@Citrus 那这些数据用什么方式来备份, rsync ?那如果用户误删除的话,想找回来就找不回来了呀
chaegumi
2016-06-27 14:30:50 +08:00
@Citrus 或者用户把原来 图片删除,传了一个一模一样名字的图片,等于丢失了。
jixiangqd
2016-06-27 14:31:42 +08:00
jenkins
icybee
2016-06-27 14:34:18 +08:00
楼上说得对, jenkins ,我记得有 docker 版本
kslr
2016-06-27 14:40:34 +08:00
@chaegumi 数据为什么要和代码混杂到一起
clino
2016-06-27 14:42:10 +08:00
"那生产环境下产生的 比如 用户图片上传这些怎么搞"
感觉你要的是备份
你应该把代码或者构建产物对于生产环境的自动化部署和生产环境的数据备份分开考虑
难不成你要把应用产生的数据都和代码放在一起做版本管理?
XianZaiZhuCe
2016-06-27 14:45:44 +08:00
瞎用 git 。。。
chaegumi
2016-06-27 14:53:54 +08:00
@clino 是的,这部分应该也是可以 git 备份的吧
vnady
2016-06-27 14:59:35 +08:00
jenkins
sxul07
2016-06-27 15:01:43 +08:00
Git 是代码版本管理。。备份用云存储…然后你们这个逻辑明显有问题 竟然直接把用户上传的文件保存在硬盘上?
sexoutsex2011
2016-06-27 15:16:00 +08:00
最近用 walle ,简单点,你试试看?
https://www.v2ex.com/t/216073
HavenShen
2016-06-27 15:22:12 +08:00
TangMonk
2016-06-27 15:23:35 +08:00
静态数据应该存放在七牛,又拍云,阿里云 OSS 这些地方

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/288591

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX