Py学习  »  Git

Git,Rebase v Interactive Rebase,Git目录结构

junvar • 6 年前 • 1217 次点击  

当我这样做的时候 git rebase <base-commit> ,我看到了目录 .git/rebase-apply 创建时包含文件 onto , orig-head original-commit ,引用 <base-commit> , head 和分别应用的当前提交。

当我这样做的时候 git rebase -i <base-commit> 而是我看到了目录 .git/rebase-merge 包含文件 到上面 , Orig头 stopped-sha ,在哪里 已停止SHA 似乎等同于 原始提交 .

我的问题是,为什么交互式和非交互式钢筋网之间的文件和目录命名存在差异?我对这些文件的理解是正确的吗?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/39138
 
1217 次点击  
文章 [ 1 ]  |  最新文章 6 年前
torek
Reply   •   1 楼
torek    6 年前

你已经发现了 git format-patch | git am 样式REBASE和A git cherry-pick 样式重新平衡。AS jthill noted in a comment 在大多数情况下,对于大多数用户来说,这些并不打算有所不同。它们最初被分成两个不同的后端,拼写为 git-rebase--am git-rebase--interactive . (它们仍然存在,但区别正在减弱。)

两者之间有一个重要的区别,与文件重命名检测有关。因为樱桃采摘钢筋字面上使用 吉特樱桃采摘 使用底层的机器 合并 机器,这将启用重命名检测。因为格式补丁REBASE没有,所以它没有。重命名检测速度很慢,因此如果没有重命名,有时格式修补程序的变化速度会更快。

你可以强迫 git rebase 使用cherry-pick模式而不通过添加 -m -s <strategy> -X <extended-strategy-option> 任何基的参数。