繁体   English   中英

Git,重新定义错误分支的分支

[英]Git, rebasing an incorrectly branched branch

git clone blah
git checkout -b development
git checkout -b bug581
hack hack
git checkout -b bug588
hack hack

哦等等,bug 588应该从开发中萌芽,而不是581。

git rebase --onto development bug581 bug588

给我:

Cannot rebase: You have unstaged changes.
Please commit or stash them.

呃,但我不呢? git status显示工作目录是干净的。 所以让我们只是为了咯咯笑。

git stash
git rebase --onto development bug581 bug588

好吧现在它有效,但它拉动了581和588的历史,我只想要588的历史,而不是581的历史。

我在Mac上,这个模糊的配置更改似乎解决了我没有关于无阶段更改的困境。

git config --global core.trustctime false

我认为这与Windows文件时间,linux文件时间和mac文件时间之间的差异有关。 谁知道,如果你这样做,请随时发表评论。

你有自动rebase打开?

查看〜/ .gitconfig或.git / config

[branch "master"]
  rebase = true

要么

[branch]
  autosetuprebase = always

第二次执行“hack hack”,是您的非分段更改发生的位置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM