每个人都使用源代码控制来管理版本(对吗?),这提供了一定程度的备份.但是,有时您的本地副本与存储库不同步.此外,一些沙盒类型的项目可能还没有;-)使其成为SCC.
编辑:我的项目目录中有多个项目.并非所有都在当前的开发中,但是每当发现错误时,其中任何一个都可能需要"修复".从SCC恢复一个活跃的项目似乎非常合理.恢复我从SCC支持的所有十几个项目似乎不如从备份恢复和必要时从SCC同步.
您使用哪些备份策略(源代码控制除外)来保护代码安全?
类似的问题可以在/sf/ask/17360801/找到,但如果你碰巧在没有组织工作的组织工作,我更感兴趣的是听别人的个人策略总体战略.我会在答案中提供我的策略.
我的策略始终是签入,并备份整个存储库.
我从不遗漏任何源代码控制,我确保定期备份(每日增量,每周完整和每月轮换)正在发生并且正常运行.
在一天结束时,我将我的代码检查到源代码管理中.
在午夜左右,Mozy启动并备份我的代码.
凌晨1点左右,SC盒备份到磁带上.
凌晨3点左右,Syncback SE唤醒并将我的代码备份到外部HD.
一整天,我的工作箱使用Live Sync与我的家庭盒同步
(除了对远程服务器的源代码控制)我使用免费版本的SyncBack(www.2brightsparks.com)和这个批处理文件:(其中syncback.exe的参数指定先前配置的同步备份配置文件)
@echo off echo Stop and start SQL Server echo ------------------------- net stop "SQL Server (SQLEXPRESS)" net stop "SQL Server (SQLSERVER2008)" echo ----------------------------------------------------------- echo Back up running now... please wait. "C:\Program Files\2BrightSparks\SyncBack\SyncBack.exe" c e-contents f-contents echo Backing up done. Starting SQL Server... echo ----------------------------------------------------------- net start "SQL Server (SQLEXPRESS)" net start "SQL Server (SQLSERVER2008)" echo ----------------------------------------------------------- echo Back up is done and SQL Server is running now. echo ----------------------------------------------------------- pause
每天有两个8GB闪存盘.在本周末,我做同样的事情,但然后针对桌面外置硬盘.
SyncBack太棒了!
OSX的Time Machine
在我看来,不时地从SCC重建一切都是一种很好的做法(例如在夜间).这样做可确保您没有忘记将任何基本文件添加到存储库.无论如何,整个过程最多只需要几个步骤.