问题标签 [git-squash]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 你如何使用 git format-patch 将提交压缩到一个补丁中?
我在一个分支上有八个提交,我想通过电子邮件发送给一些还没有 git 开明的人。到目前为止,我所做的一切要么给了我 8 个补丁文件,要么从一开始就开始给我分支历史中每个提交的补丁文件。我使用 git rebase --interactive 来压缩提交,但现在我尝试的一切从一开始就给了我无数的补丁。我究竟做错了什么?
git - 使用 Git 将我最后的 X 提交压缩在一起
如何使用 Git 将我最后的 X 提交压缩成一个提交?
git - 如何将多个提交合并到另一个分支上作为单个压缩提交?
我有一个远程 Git 服务器,这是我想要执行的场景:
对于每个错误/功能,我创建一个不同的 Git 分支
我继续使用非官方 Git 消息在该 Git 分支中提交我的代码
在顶级存储库中,我们必须使用官方 Git 消息对一个错误进行一次提交
那么如何将我的分支合并到远程分支,以便他们只为我的所有签入获得一次提交(我什至想为此提供提交消息)?
git - 在推送 Git 之前合并多个提交
我的本地存储库中有一堆主题相似的提交。我想在推送到远程之前将它们组合成一个提交。我该怎么做?我认为rebase
这样做,但我无法理解文档。
git - Git rebase(合并壁球)我的功能分支到另一个分支
我正在寻找一个 git 命令来帮助我处理我的功能分支,当它们准备好进入 Master 时。这个 git 命令会将我在分支上的所有更改压缩到 master 之上的单个提交中。我今天这样做:
其中 4 是提交到 squash 的次数。但是,这需要我知道我有多少次提交。我今天通过运行:
然后计算提交。
我觉得好像应该有更好的方法来做到这一点。还是其他人也是这样做的?
git - git合并壁球和反复发生的冲突
我有一个带有分支master
的git 存储库。分支包含修改后的代码版本,我正在尝试将更改从到合并为:alt
alt
master
master
alt
合并导致冲突:
在我解决冲突并提交更改后,一切似乎都很好,但是当我git merge --squash master
再次运行(不对任何分支进行任何更改)时,我会得到相同的冲突错误。
这是为什么?我错过了什么?
git - 如何修复此 git 提交日志?
我在 Bitbucket 上有一个存储库。c265825
当我试图压缩提交时,我有点搞砸了提交日志0a1837e
:
试图压缩这些提交会导致0942142
,它基本上是空的。我的意思是,如果我尝试查看该提交,它显示没有文件更改,这对于“合并”提交可能是正常的——我不知道。
显然我需要在推送到 Bitbucket 之前修复这样的问题,但事后我该如何修复它呢?我想 squash 0942142
,如果可能的话c265825
,0a1837e
它看起来像一个名为“删除未使用的文件”的单个提交。
PS:这是一个私人回购(目前),所以没有人取消任何这些更改(还)。
编辑: TheBuzzSaw 下面的回答对于压缩自0a1837e
. 但是,我只想压缩这三个提交并保留其余的历史记录(屏幕截图是一个模型 - 不代表实际更改)。所以我不得不这样做:
现在我的提交日志被美化了:
git - 将非线性提交合并为一个提交(制作香肠)
考虑以下 git 历史:
我如何将21f05f9
738ae0a
和2535dca
合并到一个提交中?
我尝试过git rebase -i 2535dca
, pick
ing2535dca
和squash
ing 21f05f9
and 738ae0a
,但出现以下错误:
我不确定是否有办法在 rebase 的交互模式下0534049
跳过提交。288ffd2
有没有更好的方法来做我正在做的事情?有什么陷阱吗?
编辑:
我开始明白的是,我真的不应该把自己放在需要非线性提交的地方,特别是如果这些提交都与一个文件有关。我可以看到一个提交可能会破坏代码或产生冲突的实例。
git - 如何合并两个不连续的提交
我想合并e5c1e1d
和627c6c6
怎么做 ?我想要一个更简单的方法。
因为如果它们之间有数百个提交,那么回滚然后重新提交会很麻烦。
当我跑git rebase --interactive 856c719
然后我在下面编辑了文件,保存后。
我有
2_dqa_streesful_server/.git/rebase-merge/stopped-sha: No such file or directory
Cannot 'squash' without a previous commit
github - Github repo squash 在 master 上提交
我正在使用 github 存储库,其中许多提交历史上都是“错误修复”、“这次真正的错误修复”、“确定最终错误修复”、“最终修复”。
这些都是直接提交给master的。我怎样才能压扁它们?
从他一年前的帖子开始——基本上听起来这很糟糕,想在 github 中压缩多个提交。过去一年有什么变化吗?