0

我有一个子模块git diff报告为dirty. 因此,我cd进入子模块的存储库,检查git status并查看一个文件报告为已更改。

# 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:   Main.cs

git add Main.csgit add --force Main.cs什么都不做。没有显示任何消息,并且 git status 报告完全相同。

此文件也不匹配.gitignore.

我什至不知道从这里去哪里!

git version 1.7.11.msysgit.1

4

2 回答 2

3

尝试其中之一:

  • 存储/取消存储它
  • 将文件复制到另一个地方,签出它丢弃更改,然后用保存的文件替换新签出的文件
  • 如果以上没有任何帮助,请 git rm' 然后再次添加
于 2012-11-06T21:19:06.153 回答
0

如果你从命令行运行“git gui”会怎样?

该文件应显示在未暂存列表中。单击文件的图标应将其移至暂存列表。

运行“git status”时是否会暂存 Main.cs 文件?

如果是这样,这也应该是一个简单的解决方法。

于 2012-11-06T22:31:09.433 回答