在执行git稀疏检出时,在目录名中转义空间

时间:2017-03-07 19:55:55

标签: git jenkins

尝试在jenkins中使用git sparse结帐。但是这个东西似乎并不喜欢我尝试使用名称中包含空格的子目录的方式。

E.g。我想获取文件夹:

/foo/bar baz/folder/desired_folder

enter image description here

我已经尝试过这样但没有运气:

"/foo/bar baz/folder/desired_folder"
/foo/bar\ baz/folder/desired_folder

使用git bash验证稀疏结账时会看到相同的性质。 有没有办法逃离这个空间。否则我必须重命名文件夹并再次签入

1 个答案:

答案 0 :(得分:4)

我刚刚遇到过这个问题,而git version 2.10.2.windows.1中有什么对我有用。

我为此示例创建的测试回购:https://github.com/dixon/TestSparseCheckout

关注these excellent instructions,这里是我使用的echo命令 - 我没有逃避任何事情,但我添加了*

$ echo "Folder With Spaces/*" >> .git/info/sparse-checkout

$ cat .git/info/sparse-checkout
Folder With Spaces/*

然后验证:

$ git pull origin master
From https://github.com/dixon/TestSparseCheckout
 * branch            master     -> FETCH_HEAD

$ ls
total 8.0K
drwxr-xr-x 1 dixon 0 Mar 21 14:21 ./
drwxr-xr-x 1 dixon 0 Mar 21 14:19 ../
drwxr-xr-x 1 dixon 0 Mar 21 14:21 .git/
drwxr-xr-x 1 dixon 0 Mar 21 14:21 'Folder With Spaces'/

$ ls Folder\ With\ Spaces/
total 1.0K
drwxr-xr-x 1 dixon  0 Mar 21 14:21 ./
drwxr-xr-x 1 dixon  0 Mar 21 14:21 ../
-rw-r--r-- 1 dixon 10 Mar 21 14:21 'Should Checkout.txt'

看起来有效; DoNotCheckout没有下载。