我正在创建一个批处理文件,该批处理文件创建了一个存储库,并将一个文件夹从现有的固定目录导入该存储库。
将在放置批处理文件的文件夹中创建存储库。因此,例如,如果用户决定将批处理文件放置在名为C:/ temp的目录中并运行该批处理文件,则将创建存储库并将其放置在C:/ temp中。如果将批处理文件放置在C:/ foo中,则将创建存储库并将其放置在C:/ foo中。
为此,批处理文件具有以下命令:
svnadmin create ./Module_QWER
但是,在批处理文件中,使用“ svn import”时会出现问题。我试图通过执行以下操作将文件夹从目录导入到刚刚创建的存储库中:
svn import "C:/temp/content to import" ./Module_QWER/Sample/Trunk
并发生错误:
svn: E205000: Try 'svn help import' for more information
svn: E205000: Invalid URL 'Module_QWER/Sample/Trunk'
我了解,如果存储库的URL完整,则导入将起作用,但是如前所述,存储库的URL将取决于用户放置批处理文件的位置。无论将存储库放置在什么位置,只要将其与批处理文件放在同一目录中,都可以将文件夹导入到存储库中吗?
使用与特定存储库相关的svn命令时,需要具有其完整路径和要使用的协议。因此,存储库的路径应类似于:
file:///d:/full/path/to/repo
在您的情况下,它将是:
svn import "C:/temp/content to import" file:///%cd%/Module_QWER/Sample/Trunk -m "log message"
编辑:好的,我只是注意到问题的标题是没有在路径中使用协议。我认为这是不可能的,但是可以使用%~dp0%
批处理的当前目录或%cd%
当前工作目录来简单地实现到存储库的完整路径。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句