我正在使用 git 来跟踪在我自己的 PC(运行 Ubuntu 版本)上编写项目和其他个人工作。
尽管我的工作受到版本控制,但我担心有一天我可能会因为意外或技术故障而丢失整个文件夹(包含其 .git 文件和工作本身)。
保护或备份工作的最佳方式是什么?(除了将整个文件夹复制到另一个驱动器。)
您可以使用 Git 本身轻松备份您的工作。
我可能会提出三种方法来做到这一点:
定期将存储库备份到笔式驱动器:
git init --bare
上面的存储库;将其作为命名远程添加到您的主存储库中:
git remote add --mirror=push pendrive /media/that_drive_id
该--mirror=push
命令行选项将确保一个简单的调用git push pendrive
就足以推送所有可推送的内容。
使用类似的东西备份您的存储库
git push pendrive
卸载驱动器。
下次您将要备份时,插入驱动器然后执行
git push pendrive
另一种选择是使用git-bundle
可能用于将整个存储库(带有历史记录)导出到单个文件的命令,然后可以将其复制到外部存储中。
这种方法看起来比前者简单,但它的简单是有代价的:
git-bundle
只能导出历史的特定部分,但您必须将上次备份的内容保存在某个地方,这显然不方便且容易出错。除非你的东西真的是私人的(比如密码),从 Git 提供商那里购买私人托管计划并在那里镜像你的存储库。
镜像的设置方式与 pendrive 方法完全相同,只是 Git URL 明显不同。
我个人最喜欢 pendrive 方法。