标签: git-rewrite-history

删除Git中的最后2次提交(未推送),保留更改

我试图删除,而不是revert,我的Git仓库的开发分支上的最后2次提交.提交尚未推出.

如何在不丢失更改的情况下执行此操作?

git commit git-rewrite-history

2
推荐指数
1
解决办法
442
查看次数

撤消或删除先前Git提交的更改

假设我有一个提交列表: A > B > C > D > E ,如何从历史记录中删除C中所做的更改A > B > D > E

git git-revert git-rewrite-history

2
推荐指数
1
解决办法
387
查看次数

压缩较旧的提交,同时保留较新提交的SHA1

我有这样的提交历史:

f85179d ten
7de4071 nine
5c7a482 eight
9585035 seven
b41bffc six
d102f05 five
5a28cb9 four
6fc27c9 three
524b0c7 two
bb7e6ae one
Run Code Online (Sandbox Code Playgroud)

我想将提交"一"到"五"压缩成一个提交,使它看起来像这样:

f85179d ten
7de4071 nine
5c7a482 eight
9585035 seven
b41bffc six
4tg56y5 Squash five commits into one commit.
Run Code Online (Sandbox Code Playgroud)

重要的是,我想保持未取消的提交的SHA值相同.这意味着我不能只使用`git rebase --root -i',因为它会改变所有的哈希值.

git git-rewrite-history

1
推荐指数
1
解决办法
62
查看次数

从拆分存储库恢复git历史记录

当我们的项目开始时,我们不熟悉git,并且在某些时候决定重新启动存储库.这意味着我们将所有文件导入新存储库,丢失了所有历史记录.

今天我想知道是否有办法重新组合这两个存储库.基本上,"old-repo"中文件的历史记录应该添加到"new-repo"中该文件的历史记录中.

有谁知道如何开始这个?

git merge git-rewrite-history

1
推荐指数
1
解决办法
326
查看次数

如何使用git filter-branch通过blob SHA1删除文件?

我见过的大多数git过滤器分支示例都是删除文件,它们是基于文件名删除文件的.我不一定想那样做.相反,我已经确定了要删除的文件的一些blob(不提交)SHA1,无论它们在存储库中的位置如何.(由于我们的回购历史,文件往往会在不改变的情况下移动.)

告诉git filter-branch根据blob SHA1删除文件的最佳方法是什么?

git git-filter-branch git-rewrite-history

1
推荐指数
1
解决办法
812
查看次数

从git历史记录中删除文件的某些内容

设置存储库后,在最初的提交中,添加的文件之一包含了不应包含的敏感数据(程序员的个人信息)。是否有可能从git历史中完全删除它?不是整个文件,只有几行包含敏感数据。

该存储库是相当新的,因此没有分支,并且自首次提交以来未修改特定文件。(PS:我是git的新手,我还不了解复杂的命令)

git git-rewrite-history

1
推荐指数
1
解决办法
558
查看次数

Git repo 历史清理 - 逐步尝试 BFG - 但 PR 有更多差异 - 以及如何检查密码是否从历史记录中删除

我正在尝试从我的 Git 存储库历史记录中删除密码(我很长时间以来手动从我的 Git 存储库中删除了密码,但没有从历史记录中删除,这次尝试清除我的 Git 存储库的整个历史记录)

同样,从分叉主仓库开始,然后按照步骤 - BFG Repo-Cleaner并尝试像这样在 StackOverflow 上进行搜索

在本地 Git 存储库上遵循的所有步骤,一切看起来都很好,最后一个是git push,但在那之后我没有看到我的分叉存储库上的提交,尽管我看到了这条消息This branch is 853 commits ahead, 853 commits behind,并且它提供了创建PR(以及比较)的选项在这个 PR 中,我看到了很多差异 [比如前一段时间创建的新文件,并且仍然存在于当前版本中],这与我试图替换的密码无关。

Git 版本是 2.21.0

git github git-filter-branch git-rewrite-history bfg-repo-cleaner

1
推荐指数
1
解决办法
1308
查看次数

Git:如何永久删除已提交的文件?

我已经提交了一个不应该在git存储库中的文件.我删除了它并提交删除,但我仍然可以通过git历史记录访​​问该文件.

如何永久删除已提交的文件,以便没有它的痕迹?

git git-rewrite-history

0
推荐指数
1
解决办法
585
查看次数

如何从历史记录中删除所有大于 1 Mb 的文件(但将它们保留在存储库中)

我有一个包含许多大文件(psd、exe、pdf 等)的存储库,每次我提交这些文件的更新时,git .pack 文件都会急剧增长以保留历史记录。如何从历史记录中删除所有大于 1mb 的文件,但将它们保留在存储库中。

另外,是否可以设置特定文件从不存储在历史记录中?

git github git-filter-branch git-commit git-rewrite-history

0
推荐指数
1
解决办法
3926
查看次数