git - 如何使用开发分支中的一行命令更新本地 master 并重新设置其基准?

标签 git rebase

假设我正在一个名为 dev 的分支上工作,该分支正在跟踪 master。 如果我想更新我的主分支,我需要经常运行这一系列命令:

git checkout master
git pull 
git checkout dev
git rebase -i master

当我在 dev 分支上时,是否有一行代码可以使用 git 命令来实现上述目标(即更新本地 master 并对其进行 rebase )

最佳答案

我复制这里my old answer经过一些修改。我假设你的最后一个命令应该是 git rebase master (不带 -i)。

一个命令:

git pull --rebase origin master:master

让我把它分开并解释一下。 git pull --rebase master:master 相当于

git fetch origin master:master
git rebase master

git fetch origin master:master 表示:从远程 origin 分支 master 获取新提交并更新本地分支 master 指向与远程 master 相同的提交。这就是你所做的事情

git checkout master
git pull
git checkout dev

但速度更快(无需进行 2 次 checkout )。

如果您需要存储未提交的更改,请添加--autostash:

git pull --autostash --rebase origin master:master

关于git - 如何使用开发分支中的一行命令更新本地 master 并重新设置其基准?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65816280/

相关文章:

c# - 验证 C# 项目的所有 Git 提交是否在重写历史后编译

删除/修改冲突后 Git rebase 不会继续

Git:忽略公共(public)存储库的文件,但不忽略私有(private)文件

git - 在其他提交完成后从 git rebased 分支中删除提交

git - 为什么在这些条件下 rebase 是安全的?

git - Rebase git子模块和父仓库

git - 为什么我的 "git rebase master"在最后一次 merge 后返回的提交比 "normal"多?

iphone - 在源代码管理中跟踪 Xcode 项目有哪些方法?

linux - 提交或 pull 入 git 时出现总线错误(核心已转储)

git - 如何创建默认分支名称不是 "master"的 Git 存储库?