2012-08-14 127 views
1

我有一块(别人的)软件,它现在对每个人都有一种恼人的倾向,然后通过破坏重要文件来破坏它的工作空间,如果在运行时发生硬关机。Git自动跟踪目录

它已经通过包装脚本调用,所以我对此的回应是,(因为工作空间是不是大 - 小于100M)贴tar -czf backups/workspace_$(date +%f_%R).tar.gz workspace/在程序运行之前。我可以使用这个解决方案(只需要安排一些东西来清理旧备份),但它看起来不够优雅,因为大部分时间在这些工作区中很少发生变化。大多数有问题的文件都是二进制文件。

是的,我知道正确的备份系统是一个“更好”的选择,但我不想为此使用它。

显而易见的解决方案是使用版本控制:git。我只用手动混帐,所以我稍微不确定使用该自动系统

问题1:建立回购后,

git add workspace 
git commit -m "backup on `date`" 

打算做什么我要找的?

问题2:有没有更好的方法,我没有看到? (不使用大型备份 - 我想要一个增量修订控制方案)

回答

1

git add不会跟踪已删除的文件,如果您还想跟踪已删除的文件,可以使用git add -A。否则,git add workspace + git commit将跟踪workspace中的新文件和修改后的文件。

可能使用cron备份定期更改,这可能会提供更好的数据丢失保护。而不是丢失应用程序启动时发生的变化,您将失去最后15分钟/小时/天,这取决于您使用cron的时间间隔。

+0

认为,但我想我会使用包装方法了。任何一个人都需要知道'git add -A',所以非常感谢。 – zebediah49 2012-08-14 21:11:37

1
git add -A -- some/dir 

将上演限制,对一些/所有修改目录