1

在我们公司(Windows 域网络)中,我们的开发人员使用 GIT 作为他们的版本控制软件。

每天备份主存储库(如果你可以这样称呼它)(获取 + 克隆 - 从备份服务器)

我想每天备份用户的 GIT 本地文件夹(在他们提交之前)。

我在想我可以从最后一次获取/提交中获得最后一次更改,并且只保存/备份已更改的文件。

可能吗?我怎样才能为整个组织做到这一点?(我想要一个每天都会启动的自动化脚本)

我想避免一种情况,即开发人员工作了几天(不能提交工作) - 并且由于灾难而失去了他的工作。

  • 我可以跟踪更改的文件吗?(可能是日期戳?)
4

1 回答 1

1

您无法从上游存储库中获取/克隆未跟踪的数据(请参阅“使用 git 推送未跟踪的内容”)
这意味着您无法集中启动该备份过程。

您可以将脚本分发给将 rsync 或 scp 将其 repos 存储到共享中央路径的用户。
另一种解决方案是使用git archiveor git bundle,但用户将添加以隐藏他/她正在进行的工作(其中可能包括未跟踪的文件,但恢复将能够区分上阶段和未跟踪的更改git stash pop)。

我想避免开发人员工作几天(无法提交工作)的情况

如果您想获取/克隆用户存储库,那么他们必须定期提交。
不要忘记这不是 SVN:开发人员可以创建他/她自己的dev分支并在其中提交,即使代码没有编译/没有通过测试。在这方面,dev是一个私有分支,仅用于记录开发人员的日常进度。
只有公共分支(他/她想要推送的那些)应该只包含“干净”的提交。

于 2012-10-29T12:50:03.590 回答