首页 > 解决方案 > 如何在 git repo 中缩进我的代码并在没有历史记录的情况下提交和合并?

问题描述

我有一个 git 存储库,里面有很多 C 语言代码文件,它们的格式很糟糕。

那么我可以使用缩进工具重新格式化我的源文件,并提交它们并将其推送到 gitlab 存储库而不更改历史记录吗?

当然,正常的提交、推送和 PR 工作流可以工作,但是每个文件的最新历史记录将被破坏并显示相同的消息。

谢谢。

标签: gitgitlab

解决方案


虽然您无法在不更改历史记录的情况下进行这些更改,但您可以进行这些更改并将它们放入现有提交中。

git commit --amend将对当前分支上的最新提交添加任何阶段性更改。

提交消息将保持不变,但提交哈希将更改。

为了推送修改后的提交,您需要提供-f标志以强制您对远程存储库进行更改,因为哈希已更改。(小心强制推送,如果自上次拉取后有其他人推送到存储库,他们的更改将被删除。)


推荐阅读