4

我是一名 Web 开发人员和 Subversion/TortoiseSVN 用户,当我们开始需要分支时,我希望跳转到 Git,从我所读到的内容来看,Git 更快并且更好地管理分支。

我们的 SVN 设置

我们的 SVN 设置基于通过 Samba 共享访问的中央 Linux 服务器。它安装了 Apache、MySQL、PHP 等,允许我们在类似于我们在线实时服务器的环境上进行本地测试。我们已经建立了一个共享来托管 SVN 存储库和开发环境(存储库签出)。这使我们能够在提交之前通过本地网络实时开发、测试和查看彼此的开发环境。因此,所有签出/更新/提交/开发都是通过网络上的 Samba 共享完成的。没有在任何其他盒子上进行任何开发。我们注意到 TortoiseSVN/SVN 最近开始陷入困境,并且发现分支非常缓慢。因此,我们正在寻求迁移到 Git。

设置 Git

为了尝试设置与我们的 SVN 设置类似的环境,我在 Linux 服务器上安装了 Git,在我的 windows 7 机器上安装了 TortoiseGit。然后我继续按照将 SVN 存储库克隆到 Git 的说明进行操作。这进展顺利,并保持我的日志完好无损。

设置 Git 开发环境

然后我创建了一个开发环境并从 TortoiseGit 做了一个“Git Clone”,这花了几分钟(正如我所料)。我是否正确地认为这与svn checkoutTortoiseSvn 中的相同?然后我对文件进行了一些更改并选择了“Git Comment -> master ...”。我是否正确地假设这与 相同svn commit这是事情花了相当长时间的地方。

Git 慢下来的地方

首先,尽管我只更改了 2 个文件,但它需要很长时间才能显示已更改的文件(大约 45 秒)。这在 TortoiseSVN 上通常会在 2-3 秒内发生。然后我继续提交,这又花了大约 30 秒,而在 TortoiseSVN 上可能不到 5 秒。

有些人可能会问我为什么要搬家,因为上面的 SVN 时间还不错。请记住,这是一个简单的示例。正常使用会使 SVN 花费更长的时间。

寻找解决方案

我确实在 Stack Overflow 上找到了另一个人有一个非常相似的问题,但没有任何实际的解决方案。通过 ssh/commandline 做事不是一种选择,因为一些开发人员对这类东西不是很好,而且对 Linux 一无所知。

那么,我能做些什么来使这项工作在网络上更快吗?或者,也许是 TortoiseSVN 更好的替代方案来管理提交、分支等?我们正努力将我们必须采取的步骤保持在最低限度,以保持速度。

4

1 回答 1

2

如果您的工作副本在服务器共享上,不要指望 git 会很快。Git 旨在本地运行,并远程推送/拉取。

于 2012-05-15T20:18:30.250 回答