最近在写一个项目需要用git,于是搬出扩展库中的process.git,遇到几个问题跟同学一起来看下。 windows版本是win11,如果其他版本没出现过,当我没说。
第一个,在系统没有安装git的情况下,运行这段代码,会直接报错。

来看源码,在库构造函数中有一段

找到namespace下的 getInstallPath()的函数定义
原因就是这个if判断中少了一个autoInstal参数,所以我们需要在构造函数中的getInstallPath中加一个参数,改成
就完事了。
第二个问题
是不会报错了,但是下载的时候直接404

来看源码,自动安装的时候会调用install() 函数

那就是 这两个镜像站失效了,替换个有用的

第三个 关于回显的问题
左边是cmd下运行的,右边是aarido管道运行,解决方法是

加一个参数就好
第四个 cmd的阻塞问题,这个问题其实我有疑问,下列是我的大胆猜测,仅供参考

这段代码就静悄悄的 也不知道执行到哪里了,看一下函数原型
本质上还是 popen 管道,但是我个人感觉问题出现在框起来这一段,我们稍微修改下这个函数

调一下位置,运行下代码

这就有了,我估计是这个阻塞这个函数。
这个帖子写到这里,后面还有浅显的看法可能会随缘更新。