gpt4 book ai didi

.bat 脚本中的 git 克隆

转载 作者:太空狗 更新时间:2023-10-29 13:37:23 25 4
gpt4 key购买 nike

是否可以编写一个 Windows .bat 脚本,在脚本中间执行“git clone”,使脚本继续运行?它总是让我兴奋。

我在 Windows 7 Enterprise SP1 上使用来自“Git 开发社区”的 64 位 Git 版本 2.8.3。 git.exe 在我的路径中 (c:\program files\git\cmd\git.exe) - 它不是通过 git.cmd 或类似文件间接执行的。

我能够运行一系列命令,例如

git init
git add --all
git commit -m "commit message"

并且有了这些命令,批处理脚本会正常继续执行每个命令。与

git clone {url}

脚本立即退出,通常带有双提示,提示某种异常退出(即使 %ERRORLEVEL% 为 0):

git clone {url} new
Cloning into 'new'...
remote: Counting objects: 26, done
remote: Compressing objects: 100% (23/23) done.
remote: Total 26 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (26/26) done.
Checking connectivity... done.
c:\jdev\ppss\finalprep\ant2>c:\jdev\ppss\finalprep>

常见的 Windows 技巧,如使用“call git clone ...”和“cmd/c git clone ...”似乎不起作用。即使是“start/wait cmd/c git clone ...”也不行。

有什么想法吗?

最佳答案

“git clone”之后的一行是一个 IF 语句:

git clone {url} subfolder
if "%var%" == "y" (
@echo some commands went here
) else (
@echo different commands went here
}

上面的 IF 语句不是合法的 DOS if 语句(错误的 ELSE 关闭),但您不会从 DOS 收到任何错误消息 - 您的脚本只是退出。看起来上一个命令导致了中止,在我的例子中恰好是 git clone。

这与 git 无关,严格来说是 cmd.exe 废话。

关于.bat 脚本中的 git 克隆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39349208/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com