首页 > 解决方案 > 如何删除文件,将另一个文件重命名为Git中已删除的文件名

问题描述

我的团队一直在开发一款最初是 16 位的游戏。我们已经简化为 10 位。我对理想 Git 策略的理解是创建一个分支10Bit,并将代码更改为 10 位而不更改文件名;但是,我的队友复制了几个文件,并10Bit附加在文件名上,但没有删除旧文件。这是之前的几次提交,现在我们的文件系统如下所示:

Master.sv    # <--Old 16-bit code, not used in 10-bit
Master10Bit.sv
Master_Constraints.xdc # <-- same
Master_Constraints10Bit.xdc
Slave.sv    #    <-- same
Slave10Bit.sv

我们想回到原来的名字,没有10Bit部分。但如果我这样做

git rm Master.sv
git mv Master10Bit.sv Master.sv

git 不认为这是一个简单的文件重命名。相反,git status还是一个git diff节目Master10Bit.sv被删除了,并且Master.sv发生了重大变化。但这不是发生的事情。agit diff应该显示Master.sv已删除,并且Master10Bit.sv已重命名为Master.sv.

对于所有其他文件也是如此。

进行这种更改的好方法是什么?

标签: git

解决方案


您必须删除 Master.sv,提交更改并最终将 Master10Bit.sv 重命名为 Master.sv。

git rm Master.sv
git commit -m "Remove old files"
git mv Master10Bit.sv Master.sv
git commit -m "Rename files"

推荐阅读