Git add后仍然未被跟踪

6
每次我执行git status命令时,都会出现一个未跟踪的文件夹。
$ git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       src/error/
nothing added to commit but untracked files present (use "git add" to track)

即使执行了git add .git commit -a命令,src/error文件夹仍显示为未跟踪状态。其他未暂存的文件每次都会提交,只有这个文件夹一直出现问题。此外,git也没有报告任何错误。问题可能出在哪里呢?

2
你尝试过 git add src/error/ 吗? - strager
你尝试在src/error下添加特定文件了吗?你的.gitignore文件里有什么? - David
1
您能展示一下您运行的命令及其输出吗?同时,您的.gitignore文件的内容也会有帮助。最好的猜测是尝试使用带有git add的“-f”标志。 - Greg Sexton
对于这个项目,我没有使用排除或.gitignore文件。我运行了$ git add . -f -v,但没有得到任何输出。然后我运行git status,我得到了与第一条消息相同的输出,告诉我该文件夹未被跟踪。 - slayerIQ
那个文件夹里面没有Git仓库或其他东西吧?文件夹里有什么? - xenoterracide
显示剩余3条评论
3个回答

6
我找到了问题并且解决了,原因如下:
首先,文件夹名叫做src/Error,但是在调用时却写成了src/error。我在本地修改了大小写,但是在git中还是以src/Error提交了。因为Windows不区分大小写,所以我删掉了文件夹的提交记录,并重新添加了名称正确的文件夹。

1

如果文件夹是空的,那么这是正常的,请参见此处


1

我在Windows 7控制台中尝试了以下操作,它可以正常工作,即不会将\src\error\显示为未跟踪。

C:\t>dir
 Volume in drive C is BLAH
 Volume Serial Number is 2ECA-CB88

 Directory of C:\t

10.08.2010  17:56    <DIR>          .
10.08.2010  17:56    <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)  59'844'902'912 bytes free

C:\t>mkdir .\src\error

C:\t>copy con: .\src\error\text.txt
blah^Z
        1 file(s) copied.

C:\t>git init
Initialized empty Git repository in C:/t/.git/

C:\t>git add .\src\error\*

C:\t>git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage)
#
#       new file:   src/error/text.txt
#

这并不回答你的问题,但我认为看到一个完整的逐步示例可能会有所帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接