代码管理至关重要,稍有不慎辛苦的劳动成果可能付之东流,今天结合个人经验给大家介绍个个人开发者使用免费资源打造高可用代码管理系统的方法。

        使用本方法打造的管理系统能够应对以下灾难:

  1. 本地电脑硬盘故障,硬盘彻底坏掉不受影响
  2. 使用移动介质备份,移动介质丢失不受影响,代码泄露风险低
  3. 代码托管到服务器端(比如git/码云等),服务器端不可用时,不影响开发工作,代码提交、版本比对等不受影响

以下是代码管理系统的架构逻辑:

架构说明:

代码管理由两个代码服务器组成,本地以及远程,代码在本地修改提交时通过钩子自动提交到远程服务器,本地的代码支持多个终端(个人开发台式机、笔记本等),每个终端都是一份完整备份,同时通过远程服务器多个终端之间代码的修改可以同步。

物理部署:

实际物理部署有远程服务器(可用是码云/subversion, 码云开启svn 管理) ,windows 系统下安装 vmware 虚拟机,虚拟机安装linux 操作系统,在虚拟 linux 操作系统上部署 subversion 服务,同时挂载虚拟磁盘,代码的管理和修改都放在虚拟磁盘上,虚拟磁盘可以随时用移动介质备份。

各种故障应对方法:

  1. 远程服务器故障: 远程服务器故障只是暂时不能将修改同步上去,本地有完整的代码记录不影响版本diff, 同时也可以提交到本地,本地的修改通过钩子同步到本地的远程副本,待远程服务器故障解除后一次提交即可完成同步。
  2. 本地 windows 操作系统故障:重装系统后再次启用虚拟机即可,如果有多个终端还可以在其它终端工作,故障的系统或磁盘可以慢慢修复,不影响项目代码编写
  3. 虚拟机 linux 操作系统故障:重装虚拟操作系统,挂载代码相关的虚拟磁盘,重建本地代码管理服务
  4. 本地终端丢失或者火灾地震等原因彻底损坏:使用远程服务器的代码重建本地终端即可
  5. 移动介质丢失:移动介质备份着虚拟磁盘,虚拟磁盘是一个文件可以随意改后缀,一般软件识别不了,在一定程度上可防止代码泄露,也可对这个文件加密获得更高的安全性

代码是最好的说明文档,相关同步脚本和钩子文件放附件里,感兴趣的同学可以下载查看。

附件: code_yw.tar

本文系本站原创,转载请注明出处:http://console.xrkmonitor.com/a/code_yw.html