checkout命令

checkout命令

从上流分支checkout

在不产生任何合并(Merge)和冲突的情况下,把 upstream(上游原仓库)的分支如 dev “搬”到个人 fork 仓库中。

先检查是否正确设置了 upstream:

git remote -v

如果没有,则通过命令添加 upstream:

git remote add upstream <原仓库的URL>

拉取 upstream 的信息:

git fetch upstream

基于远程 dev 分支创建本地 dev 分支:

git checkout -b dev upstream/dev

然后推动到自己的 fork 仓库:

git push -u origin dev

备注: -u 参数的意思是建立追踪关系,以后在本地的 dev 分支上执行 git push 或 git pull 时,Git 就会默认对应到 fork 仓库里的 dev 分支。

从上流tag checkout

类似的,从上流tag checkout 到本地分支:

# 查看当前的远程仓库
git remote -v

# 添加 upstream
git remote add upstream https://github.com/upstream-org/repo.git

# 从 upstream 拉取最新的所有分支和 Tag,主要一定要拉取 tag
git fetch upstream --tags

基于 Upstream 的特定 Tag 创建新分支:

# 语法:git checkout -b <新分支名> <tags/标签名>
git checkout -b my-feature-branch tags/v1.2.3

# 或者使用新版命令:
git switch -c my-feature-branch tags/v1.2.3

提交代码之后,推送新分支到自己的仓库:

# 推送分支到本地的远程仓库 origin
git push -u origin my-feature-branch