这是我的 git 服务器树:
----a/
|--b/
|--c/
|--d/
|--e/
|--f/
|--g.txt
|--h.readme
这是我的 git 版本树
---------------->master
|---->myBranch [files are up to date here]
这是我的詹金斯服务器树
-----A/
|--B/
|--C/
我正在尝试检查存储库“B”中存储库“e”的内容我只需要我正在处理的当前分支的最后一个版本,我不想提交,只是为了获得一些最新信息要运行的日期只读脚本,所以depth 1
我猜是可以的。
无论如何,我面临的问题是我能够进行稀疏结帐
#############################
##### 1/ configuring local folder
#############################
git init
git config core.sparseCheckout true
#an empty repository with the remote is created:
git remote add -f origin ssh://guillaumedg@domain.com:port/myProjects/thisProject.git
#add repository "e" to be checked out:
echo e/*> .git/info/sparse-checkout
#############################
##### 2/ fetching/updating files
#############################
git fetch
git checkout myBranch
我知道我很接近,但我得到的是:
-----A/
|--B/
| |----a/
| |--d/
| |--e/
| |--f/
| |--g.txt
| |--h.readme
|--C/
不是这个(这是我想要的)
-----A/
|--B/
| |--f/
| |--g.txt
| |--h.readme
|--C/
任何提示?
顺便说一句,我尝试了将“深度 1”用于“步骤 2”的不同方法,但没有成功:
git fetch --depth 1 $(url) $(branch)
git checkout $(branch)
--> 错误:pathspec 'myBranch' 与 git 已知的任何文件都不匹配。
git fetch --depth 1 $(url) $(branch)
git checkout
--> 致命的:你在一个尚未出生的分支上
git fetch --depth 1 $(url) $(branch)
git checkout -b $(branch)
致命:一个名为“myBranch”的分支已经存在。
git fetch
git checkout $(branch)
--> 如上所述工作