Windows 无法通过VBScript中的命令删除带有GIT repo的文件夹

Windows 无法通过VBScript中的命令删除带有GIT repo的文件夹,windows,git,command-line,vbscript,hp-quality-center,Windows,Git,Command Line,Vbscript,Hp Quality Center,我正在使用质量中心在Windows8中执行测试。 VBScript文件创建一个临时(时间戳)工作区/文件夹,以克隆git存储库并执行测试 当我在测试结束时尝试删除文件夹时,它不起作用,并给出一个错误:无效的字段类型定义 如果我使用非git存储库和静态项目,那么这段代码可以很好地工作。如果手动删除.git文件夹,脚本将能够删除剩余的文件夹/文件 '''workspace = "C:\tests\20170613224942" Dim objFSO, objFolder Set objFSO = C

我正在使用质量中心在Windows8中执行测试。 VBScript文件创建一个临时(时间戳)工作区/文件夹,以克隆git存储库并执行测试

当我在测试结束时尝试删除文件夹时,它不起作用,并给出一个错误:无效的字段类型定义

如果我使用非git存储库和静态项目,那么这段代码可以很好地工作。如果手动删除.git文件夹,脚本将能够删除剩余的文件夹/文件

'''workspace = "C:\tests\20170613224942"
Dim objFSO, objFolder
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CreateFolder(workspace)

'git clone
'Test Execution

Dim objFSO, objFolder
Set objFSO = CreateObject("Scripting.FileSystemObject")

objFSO.DeleteFolder(workspace)
我已经尝试过(没有成功)类似的东西:

objShell.Run "rmdir /S /Q " & workspace
我不知道隐藏文件夹是否有问题,所以我尝试了以下方法:

del /s /a *.git
但这仅适用于文件,在这种情况下,仅隐藏文件夹。不是子文件夹/子文件

有人能帮我解决这个问题吗?如何通过脚本强制自动删除文件夹? 谢谢。

您能试试:

git rm -r gitDirectoryToRemove

然后,如果需要删除父级的代码找到了临时解决方案。也许不是优雅的,但解决了问题。 我创建了一个.bat文件,仅用于删除参数传递的文件夹,并在VBS中调用它

Bat文件:

@echo off
@echo Try to removing %1
rmdir "%1" /s/q
Set objShell = CreateObject("Wscript.Shell")
objShell.Run "C:\tests\rm_workspace.bat " & workspace
VBS呼叫:

@echo off
@echo Try to removing %1
rmdir "%1" /s/q
Set objShell = CreateObject("Wscript.Shell")
objShell.Run "C:\tests\rm_workspace.bat " & workspace
间接移除,它就像一个符咒。
原因:仍然不知道为什么。

我试过并给出了错误:致命:不是git存储库(或任何父目录):.gitGot。然后尝试从非GIT目录访问GIT/trying-to命令。在输入git命令之前,您应该将目录更改为git父文件夹。在git父文件夹中,该命令起作用,但仅删除项目/代码。文件夹.git(有问题的文件夹)未被删除。您实际要删除的目录是哪个(比如D:\workspace\temp\GitProject)-这里是workspace还是temp或GitProject?试试这个-转到git目录,然后
rd/s/q
del/s/q.git
rmdir/s/q.git
。这些都应该适合你。