Tortoise Mercurial -- -- 合并2项承诺。

问题描述 投票:0回答:1

我开始使用Mercurial。

1.) 我从公共(中央)仓库中提取了最新的更新(3029版)

2.) 在代码方面,我做了一个提交-------------------------------------------------------------------修订3030

3.) 一些额外的工作,和 - 我做了另一个提交3031。

所以,我的3030和3031这两个提交都在本地仓库里,现阶段我的本地仓库是这样的

enter image description here

中央仓库里没有其他人的提交。

这时我已经完成了,并提交代码审查--我的审查员告诉我,应该只有一个提交,我需要 "删除 "3030版本的提交,并保留3031版本。我需要把3030版本的提交 "去掉",保留3031版本。

如果我在3030版本上进行 "剥离",它同时剥离了3030和3031两个版本(我知道如何从备份中恢复,所以我没有丢失任何东西。 我恢复了)。)

如何能结合修订3030和3031到一个单一的提交使用Tortoise HG?

version-control mercurial tortoisehg
1个回答
1
投票

使用还原所有文件。

一个简单的方法,只要你没有任何未提交的变化在你的工作目录。

更新到你要压制的修改之前的提交。

update to the commit before the changes you want to squash

右键点击最新的提交,然后点击 "Revert all files...... "这将使你的工作目录状态恢复到上次提交时的状态。

right click on latest commit

现在只需做一个新的提交,其内容将是最近两次提交的内容。

然后你可以使用'strip'来删除不需要的分支。(或者将相位改为秘密,以防止被意外推送)


1
投票

使用Rebase。

首先启用Rebase

然后选择最底层的提交,点击重基。

enter image description here

在rebase选项页面选择collapse。

enter image description here

然后你会被要求输入新的提交信息。

© www.soinside.com 2019 - 2024. All rights reserved.