我使用
git fetch origin feature/blabla
是我想要获取的具体内容
- 然而,这不会获取当前在
feature/blabla
上的标签。 - 仅
git fetch
(假设分支已签出)获取标签。
是否可以使用我的版本,也获取标签一起吗?(我不想用git fetch --tags
获取所有标签)。这在另一个分支上尤其有用。
先检查添加——tags是否导入所有标签。
在git/git commit 5328456中可以看到,git fetch
手册页曾经说过:
默认情况下,标签是自动跟随的。
这意味着当从远程获取时,远程上指向本地存储库中存在的对象的任何标记都将被获取。
如果只获取一个分支,则只获取指向该分支的标签。
OP Gabriel在评论中报告说:
git fetch --tags --prune --prune-tags origin feature/blabla
虽然它不工作,因为--all
仍然获取所有的标签。
所以行为必须改变,d和标签不再自动跟随。
Git必须考虑每个标签,以检查它是否包含(引用一个提交)你想要获取的分支。
这将大大延迟读取操作本身。
所以现在,--tags
(意思是refs/tags/*
)是唯一的选择。
或者一个复杂的脚本,它将:
- 在单独的本地克隆中获取标签
- 本地检查每个导入的标签是否引用了分支
- 从单独的本地克隆获取单个标记到原始的本地克隆存储库。