git fetch拉取分支/tag
git命令解释
1 | git fetch --tags && git checkout release/20250825 |
1. git fetch --tags
--tags只会拉取所有 tag 信息,并不会同步远程分支(除非本地没有某个分支,它会顺带拉下来)。- 如果你要同时更新 分支 和 tag,建议这样写:
1 | git fetch --all --tags |
这样会更新所有远程分支和所有 tag。
2. git checkout release/20250825
这里关键要分清楚 你要 checkout 的是分支还是 tag:
如果是分支(推荐分支模式来做 release 迭代):
1
git checkout -b release/20250825 origin/release/20250825
这样你会有一个本地 tracking 分支,可以继续提交、合并。
如果是 tag(release 是打标签模式):
1
2
3git checkout tags/release/20250825
# or
git checkout release/20250825这种情况 checkout 后是 detached HEAD (分离)状态,不能直接提交,一般用于构建/回滚。
建议实践
如果团队支持 分支模式(release 用分支维护,方便热修复):
git fetch --all --tags git checkout -b release/20250825 origin/release/20250825如果团队支持 tag 模式(release 是快照,不可变,构建用):
git fetch --all --tags git checkout tags/release/20250825