跳转到内容
彼岸论坛
欢迎抵达彼岸 彼岸花开 此处谁在 -彼岸论坛

[分享创造] 一个备份 git 仓库的思路,各位有什么建议


小天管理

已推荐帖子

git config alias.backup '!f() { ([ -f "/path/to/git-backup/$1/HEAD" ] || git init --bare "/path/to/git-backup/$1") && (git remote set-url --delete origin "/path/to/git-backup/$1" 2>/dev/null; git remote set-url --add origin "/path/to/git-backup/$1"); }; f'

cd /path/to/something

git init
git remote add origin git@github.com:username/something.git

git backup something

git remote -v
# origin	git@github.com:username/something.git (fetch)
# origin	git@github.com:username/something.git (push)
# origin	/path/to/git-backup/something (push)

如此在每次 push 到 github/gitlab 的同时,还会 push 到 /path/to/git-backup 下,然后再用备份工具对 /path/to/git-backup 进行备份,这样:

  1. 不用考虑排除哪些文件,不挑备份工具,备份脚本不复杂
  2. 不用考虑用的是什么 git hosting service
  3. 不需要额外运行个服务(本来是打算跑个 gitea/gogs 的,但是为了可以加密备份放弃了)

未解决:

  1. 并非本地做的一些变更提交,例如 actions 中产生的
  2. 未提交的变更,其实我并没有这个需求,我认为只对提交负责挺好的
  3. 代码以外的东西,例如 issues 、pull requests 、discussions 中的讨论,尽管我没有这个需求
  4. .gitignore 排除掉的秘密、配置文件,虽然以前提问过,站内有人推荐 git-crypt ,但我觉得我还需要一个别的方案

各位对此思路有什么想法和建议吗?

意见的链接
分享到其他网站

加入讨论

您现在可以发表并稍后注册. 如果您是会员,请现在登录来参与讨论.

游客
回复主题...

×   粘贴为富文本.   粘贴为纯文本来代替

  只允许使用75个表情符号.

×   您的链接已自动嵌入.   显示为链接来代替

×   您之前的内容已恢复.   清除编辑器

×   您无法直接粘贴图片.要从网址上传或插入图片.

  • 游客注册

    游客注册

  • 会员

    没有会员可显示

  • 最新的状态更新

    没有最新的状态更新
  • 最近查看

    • 没有会员查看此页面.
×
×
  • 创建新的...