我有两个已经在git中添加和提交的文件。
报告
report_dates
现在,我已经修改了这两个文件并尝试提交但git错误地将report_dates文件标记为在我将它们添加到暂存区域后重命名。
> git status
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: report
modified: report_dates
> git add report
> git add report_dates
> git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
renamed: report_dates -> report
modified: report_dates
我尝试使用 git commit --dry-run 进行验证,并将该文件显示为已重命名。提交会覆盖原始文件吗?有两个不同的文件,其中90%的内容相似。
答案 0 :(得分:2)
正如我之前在&#34; git status
shows rename but it's incorrect&#34;中所解释的那样,您需要在看到正确的状态之前实际提交。
提交前的git status
:
git commit --dry-run -a
(请注意-a
)可以提供帮助。report_dates
being moved(在report
重命名)report_dates
正在修改它(git status
)确实知道 确定直到您实际提交:在提交之前您可能仍然删除了report_dates
。
但实际提交将注册两个文件(无覆盖),而新git status
不会显示任何重命名(confirmed为OP shnazz)。