假设我没有使用分支(我正在使用本地主分支,其原点是远程服务器上的主分支)。想知道命令的功能是什么?我的困惑有时候我看到人们使用这个命令成功地合并本地更改(在主远程服务器分支上的更改)而不使用分支,但我可能是错的但我认为rebase仅在您处理分支(主)时才有效与其他分支合并?
git rebase -i origin/master
答案 0 :(得分:3)
origin/master
就像master
一样是一个分支。它基本上跟踪远程主站上的任何内容。
当您从git fetch
运行master
时,它将从远程主控获取所有提交并将其放到origin/master
。如果您随后运行git rebase -i origin/master
,则会发生这种情况:
origin/master
以外的所有提交都暂时放好origin/master
master
因此,如果您先手动fetch
然后rebase
,那基本上是手动执行git pull --rebase
会做的事情。
顺便说一句,您也可以重新登录自己的分支,例如:git rebase HEAD~2
。这将允许您重新排序(或以其他方式编辑)当前分支上的提交。