贡献者: addis
以下 bash 程序可以把若干个文件夹中的每个都用 git 备份到 备份目录
。运行完后,每个 文件夹*
会保存为 备份目录/文件夹*.git
。这个其实就是 git 仓库中的 .git
文件夹(注意并不是 bare repo,不可以用于上游)。
要注意的是,Git(尤其是 Windows 上)处理大的二进制文件的速度较慢。笔者在 Windows 上在两个 HDD 硬盘之间用该脚本备份,写入速度平均 12MiB/s。但笔者认为 Git 的丰富功能和灵活性、以及广泛的普及可以弥补这一不足。另见 bup(待研究)、git-annex(最新版本依赖于 symlink)以及 git-lfs(没有本地 repo)。更简单直接地,可以用 rsync 甚至 cp 备份。
备份脚本:用法 git-backup.sh 备份目录
。所有子目录中,如果包含 .gitattributes
,就会备份到 备份目录/子目录名.git
(相当于正常使用 git 时的 备份目录/.git
文件夹)。
友情链接: 超理论坛 | ©小时科技 保留一切权利