如何configurationplink.exe是由git运行时的详细信息?
问题是:在GIT_SSH=plink.exe间歇性地跨越构build从站时,使用命令git.cmd clone git+ssh://user@host/repo folder在GIT_SSH=plink.exe 。 我需要find根本原因,并使连接可靠,而不必重试一些计数。
我缩小了sshd正在运行并终止其进程没有错误。 服务器正在运行gitosis,所以我只有命令行输出继续。 当失败发生时,gitosis不会被调用(没有gitosis打印),所以我怀疑windows ssh客户端。
当git调用plink.exe时,我想连接详细日志logging。
设置GIT_SSH=plink.exe -v结果是:
错误:无法产生plink.exe -v:没有这样的文件或目录
原来,GIT_SSH必须是一个可执行文件或包装脚本。
创build这样一个batch file包装会变得更近: GIT_SSH=C:\path\to\plink.cmd其中plink cmd是plink.exe -v %*打印预期详细的日志logging到控制台,但终止失败,错误代码为128.克隆的文件夹从来没有创build,最后打印的控制台输出是:
无法写入标准输出:pipe道正在closures。
如何从plink获取详细的客户端日志?
从svn://svn.tartarus.org/sgt/putty源代码,使用perl mkfiles.pl从根目录下的Visual Studio 2010命令提示符构buildwindows make文件,然后用nmake -f Makefile.vc 。
在winplink.c main()函数中找一个好地方做一个本地编辑。 我把它放在arg处理循环之前。
flags |= FLAG_VERBOSE;
“Plin”错误实际上是从Git服务器返回的错误消息的前4个字符。 通常,使用plink.exe提供密码时,从“echo%USERNAME%”传入帐户名称。
我们发现间歇性错误与用户名到GIT用户列表的不一致映射有关。 我们最终以大写forms标准化了所有的Git用户名。 问题就消失了。
这个问题影响了许多Git分支的许多用户。