1

使用 PyCharm 提交到 git。通过对话框提交后,我不断收到此错误:

错误:“静态/静态/js/backbone_objects/router.js”有本地修改
(使用 --cached 保留文件,或 -f 强制删除)

问题是我正在使用 PyCharm 的界面来执行此操作,据我所知,我无法将这些命令添加到 gitcommit命令中。

处理这种情况的好方法是什么?

非常感谢!

4

1 回答 1

7

最有可能发生的情况如下:

  1. 您已经对文件进行了一些修改并将它们暂存到索引中。
  2. 你已经删除了文件。
  3. 当你调用 commit 时,PyCharm 会自动对所有修改的文件调用“git add”,对所有删除的文件调用“git rm”。

后一个命令产生了错误。通过这条消息,Git 警告您即将删除一个文件,您不仅更改了该文件,而且还暂存了更改。

要解决问题,只需git rm -f <file>从命令行调用。

PyCharm 不能正确处理这种情况的原因是它不了解实现中的 Git 暂存区。请随意投票给IDEA-63391(一般问题)和IDEA-85948(可能与您遇到的问题相同)。


顺便说一句,我的 Git 版本报告了一个更清晰的信息,所以你必须使用一些旧的:

error: 'dir with spaces/newfile.txt' has changes staged in the index
(use --cached to keep the file, or -f to force removal)
于 2012-07-26T14:39:06.453 回答