我在VSTS git中有一个存储库https://phm-dsc.visualstudio.com/PHM/_git/repo。如何使用powershell / batch脚本命令将此存储库中的文件夹添加到本地?我尝试了以下但没有工作(得到这个错误:稀疏结账在工作目录上没有任何条目)。任何建议都会有所帮助
mkdir sql
cd sql
git init
git remote add origin -f <<https URL of repository>>
git config core.sparsecheckout true
echo <<path of the folder>> >>.git/info/sparse-checkout
git pull origin master
答案 0 :(得分:0)
这应该有效 - 或者至少你已经接近了。我有一个基本相同的脚本,这些步骤看起来基本正确。
但是,请尝试从<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
中删除-f
选项。在创建git remote add origin
文件之前,您确实不希望进行提取。这可能是个问题。
如果您仍然无法使其工作,为什么不考虑将您尝试的步骤与公共仓库(在VSTS或github上)一起发布。这样,其他人可以尝试这些步骤,看看到底出了什么问题。
答案 1 :(得分:0)
您可以阅读“On Windows git: “error: Sparse checkout leaves no entry on the working directory””
中的一些提示特别是:
<path you want to checkout>
可能如下所示:path/to/subfolder
- 请注意缺少前导和尾随路径分隔符。重要提示:请务必使用下面的git bash提示符,并使用支持unix行结束约定的编辑器,并在编辑稀疏结帐文件时另存为ANSI,否则可能会出现“错误:稀疏checkout在工作目录中没有留下任何条目“错误。
请仔细检查.git/info/sparse-checkout
文件中使用的eol(行尾)。
答案 2 :(得分:0)
要从VSTS git repo获取文件夹到您的本地目录,您可以按照以下命令(假设文件夹名称为myfolder
,并且它位于master
分支):
mkdir sql
cd sql
git init
git remote add origin -f https://phm-dsc.visualstudio.com/PHM/_git/repo
cd repo
git checkout origin/master myfolder/
现在myfolder
中的内容已获取,如有必要,您可以提交到本地git仓库。