git rebase –skip是做什么的?
我只是做了一个git pull --rebase origin master
,出现了冲突。
首先,这个冲突是在一个我没有触及的文件中,大约有10个提交。 为什么会这样呢?
然后我意外地input了git rebase --skip
,并且“跳过了这个补丁”。
担心我已经跳过了一个提交,我检查了一个新版本的主分支,并做了分支之间,我做了rebase和新的主分支之间的差异。 diff中显示的唯一更改是最新的提交,查看日志,“跳过”的补丁显示在提交历史logging中。
任何人都可以解释这里发生了什么?
它做它所说的,它跳过一个提交。 如果你在同样的rebase期间在稍后的冲突中运行rebase --abort
,则跳过的commit将会被rebase --abort
。
如果您的更改已经存在上游,Git将无法应用您的提交(但通常应该自动跳过,如果补丁完全相同)。 你自己的提交将被跳过,但是改变将仍然存在于当前HEAD中,因为它已经被应用在上游。
你应该确保你没有删除你的重要变化;)(使用reflog回到rebase之前的状态)