首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果git重基被重基分支删除,为什么要删除最近提交中添加的文件?

如果git重基被重基分支删除,为什么要删除最近提交中添加的文件?
EN

Stack Overflow用户
提问于 2016-05-06 02:23:55
回答 1查看 8.5K关注 0票数 7

我正在试图弄清楚为什么git重基会导致一个新创建的文件被删除,如果我要从已删除的分支中重新构建它。例如:

代码语言:javascript
复制
A1 - A2 - A3
 \
  B1

A2 = add a new file test.txt
A3 = delete test.txt
B1 = add the exact same file as A2

如果签出B1并执行git rebase A3,则仍将删除test.txt。我希望结果是:

代码语言:javascript
复制
A1 - A2 - A3 - B1

这意味着test.txt仍然存在。为什么在重基之后删除test.txt?

EN

回答 1

Stack Overflow用户

发布于 2016-05-06 04:06:30

正如 documentation所说:

请注意,HEAD中的任何提交都会带来与HEAD中提交相同的文本更改。省略(即已经接受的带有不同提交消息或时间戳的上游修补程序将被跳过)。

在您的示例中,B1引入了与A2相同的更改。这样,当您进行重基时,就会从重基过程中省略B1,因为这个修补程序已经有了。您可以添加-i选项来执行交互式重基。这使您可以看到,B1没有在待办重基进程列表中列出。尽管如此,您可以通过在交互式重基的todo列表中添加pick B1来手动选择提交。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37063238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档