如何检查 git rebase 发生了什么变化?
How to check what git rebase had changed?
有没有办法检查 git rebase
在执行变基并退出变基模式后发生了什么变化?
我使用 rebase 来更改以前提交的作者姓名。
在尝试这样做时,我在错误的分支(即 master
)中进行了重新定位,这在我看来在重新设置文件中显示了一些不是我的目标的提交。因此,我只是退出了编辑器,它说 "Rebase done successfully".
最后,我切换到我的本地分支(即 vIO
),我可以更改作者姓名,但我想检查我的其他变基试验是否不影响历史记录。顺便说一句,我的本地分支 (vIO
) 尚未推送到远程。
我尝试通过以下方式比较本地主机和远程主机:
git diff origin/master...master
这没有带来任何东西。这是否意味着 master 分支没有受到 rebase 的影响?
git
为每个单独的分支保留一个日志,您可以通过 git reflog
命令访问它:
git reflog master
将向您展示本地 master
分支的演变,
git reflog vIO
本地 vIO
分支的演变。
在此 reflog 中,rebase 应用的操作将显示一条消息:
rebase (finish): refs/heads/branchname onto eacf32bb...
git diff origin/master...master
命令告诉你 master 上没有新内容,这是一个很好的指示。
如果您想 100% 确定 master
没有移动,请查看带有 git log
的提交列表:
git log --graph --oneline origin/master master
将允许您查看两个分支是否有任何不同的提交:
- 如果标签
master
和 origin/master
出现在同一个提交上,则两个分支是同步的;
- 否则,请查看图表以了解应采取的措施(
pull
、push
、merge
、rebase
...)
有没有办法检查 git rebase
在执行变基并退出变基模式后发生了什么变化?
我使用 rebase 来更改以前提交的作者姓名。
在尝试这样做时,我在错误的分支(即 master
)中进行了重新定位,这在我看来在重新设置文件中显示了一些不是我的目标的提交。因此,我只是退出了编辑器,它说 "Rebase done successfully".
最后,我切换到我的本地分支(即 vIO
),我可以更改作者姓名,但我想检查我的其他变基试验是否不影响历史记录。顺便说一句,我的本地分支 (vIO
) 尚未推送到远程。
我尝试通过以下方式比较本地主机和远程主机:
git diff origin/master...master
这没有带来任何东西。这是否意味着 master 分支没有受到 rebase 的影响?
git
为每个单独的分支保留一个日志,您可以通过 git reflog
命令访问它:
git reflog master
将向您展示本地master
分支的演变,git reflog vIO
本地vIO
分支的演变。
在此 reflog 中,rebase 应用的操作将显示一条消息:
rebase (finish): refs/heads/branchname onto eacf32bb...
git diff origin/master...master
命令告诉你 master 上没有新内容,这是一个很好的指示。
如果您想 100% 确定 master
没有移动,请查看带有 git log
的提交列表:
git log --graph --oneline origin/master master
将允许您查看两个分支是否有任何不同的提交:
- 如果标签
master
和origin/master
出现在同一个提交上,则两个分支是同步的; - 否则,请查看图表以了解应采取的措施(
pull
、push
、merge
、rebase
...)