2012-10-22 82 views
1

我们希望在一个国家的主要git服务器上进行设置,并在另一个国家/地区拥有缓存/代理服务器。我们使用巨大的文件大小,以减少检查时间和chekouts,我们希望采用这种方法。在不同地理区域设置git

如何设置缓存/代理git服务器。如果有其他方法,请告诉我。

感谢

回答

0

这听起来像一个镜子的想法,这样的文章“Setting up backup (mirror) repositories on GitHub”的。

在你的情况下,你不会为你的镜像使用GitHub,但你会设置一个cron作业,确保你的辅助服务器git repo与你的第一个服务器同步,为你的所有repos执行do_push。

do_push() 
{ 
    for REPO in $1/*.git; do 
    (cd $REPO && git push github) 
    done 
} 
+0

我不知道这是否会有所帮助。上述方法仅在备份存储库时才有效。我认为当文件被修改并直接签入主服务器时,我们会遇到问题。 cron作业将失败。我正在寻找一些能够同时保持主要git服务器和seconday git服务器同步的方法。 – kumar

+0

@kumar当“文件被修改并直接签入主服务器”时,为什么会出现问题?你只能从主要同步到次要,对吗? – VonC

+0

考虑这个例子File1-MainRepository-Country1和File1-SecondayRepository-Country2。如果来自Country1的人更改File1并将其检入主存储库。那么来自Country2的人将同一个文件File1检入到Seconday Repository中。所以当使用cron作业进行辅助同步时,会有冲突。我正在寻找两种同步方式。 – kumar