安全删除本地分支的方法在rebase之后 -- 替换git branch --merged命令

3

我需要更改旧提交中的提交消息才能将其推送到远程服务器。这个提交只存在于我的本地机器上,所以我可以交互式地进行变基,然后修改它。

通常,在将代码推送到远程服务器后,我会删除所有未使用的本地分支,为此经常使用以下命令:

   git branch --merged

我希望能够双重检查可以删除哪些分支。然而,此命令只会在提交历史记录中向后检查可达或不可达的分支。因为我进行了变基,所以我使用的分支不在输出中,并且我不能百分之百地确定我的最后更改是否在变基后全部包含在内。这听起来很奇怪,我知道。

在变基后,我如何知道可以安全删除哪些分支?我应该担心这个问题吗?还是变基比我想象的更安全?

1个回答

0

由于您在变基过程中没有更改任何文件,因此您可以检查您的历史记录是否包含了另一个分支的树。

您可以使用以下命令获取另一个分支的树 SHA1:

git log --pretty=format:%t -n 1 other_branch

然后在你的历史记录中搜索它:
git log --pretty=format:"%t %ai %s" | grep <tree_SHA1_you_found>

如果你得到了某些东西,这意味着在你的历史记录中,此时你拥有与其他分支相同的文件集。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接