6

我有一个项目,在项目过程中我意识到我不喜欢目录的名称。

在 GIT 中,我们可以重命名目录然后提交,但历史记录仍会显示较旧的文件夹。

我想将名称更改重新设置为较早的提交。所以我通常会做的是:

git rebase -i origin/master

然后将文件夹重命名提交移到顶部。
然而,正如预期的那样,git 会产生很多需要解决的冲突。

有没有更自动化的方法来做到这一点?

4

1 回答 1

6

如果它是您尚未与任何人共享的东西,我推断这是因为您无论如何都试图对其进行变基,我将删除包含重命名的提交,并执行过滤器分支。

假设 foo 包含第一次出现的错误目录,并且您的重命名是最新的提交:

git reset --hard HEAD^ # removes the rename commit
git filter-branch --tree-filter "mv bad good" foo^..HEAD

这会将坏目录重命名为好目录。

于 2013-03-13T15:44:02.707 回答