我的git push操作在25-30秒左右完成,而不是(或多或少)立即返回。 我使用的是相当长后接收(bash)的脚本,I`ve在这里找到:https://raw.github.com/zma/usefulscripts/master/script/post-receivegit push post-receive slow
一些细节:
- 我的远程仓库是一个局域网服务器,在那里我们有大约70MB的/ (这看起来不错)
- 这是一个新鲜的存储库,其中只有一个单一的测试文件
- 我使用git bash,由gitextension(git版本1.7.11.msysgit.1)安装,
- 我也用gitgui测试了一个push操作,但是th延迟是相同的。所以我认为它与我正在使用的前端无关。
- 如果我删除后收到脚本,推操作工作好(无延时的话)
我做了一些测试,如果后收到脚本中含有大约70线即都被注释掉了(所以该脚本不做任何事),推迟大约5秒钟。
这是正常的吗? 还是有加快推动的方法吗? 或者我必须戏剧性地缩小脚本大小?
更新: 它提到这一点很重要:
- 我使用windows7的
- 远程信息库托管在Linux服务器上,可达通过Samba
这也是一个很好的提示,但我也测试过这个(或类似的东西):我修改了脚本以跳过邮件发送过程(也跳过电子邮件正文的临时文件创建),然后收集信息(谁在什么分支上做了什么),延迟大约是15-20秒。但是我有一种感觉,没有邮件发送的速度变得更快的真正原因是脚本中的行数不足以处理,而不是因为脚本本身的事情少。 – user2448122
@ user2448122,所以你可以按照这个提示,用一行钩子脚本收集信息并将其写入文件,而cron作业脚本包含该过程的大部分;) – VonC