如何为域用户备份本地git更改?

时间:2012-10-29 11:12:09

标签: windows git windows-server-2008-r2

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

主存储库(如果可以调用它)每天备份(从备份服务器获取+克隆)

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

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

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

我想避免一种情况,即开发人员工作了几天(无法提交工作) - 并因灾难而失去工作。

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

1 个答案:

答案 0 :(得分:1)

您无法从上游仓库获取/克隆未跟踪的数据(请参阅“Pushing untracked content with git”)
这意味着您无法集中启动该备份过程。

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

  

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

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