git add . -> 新文件仍然显示 "nothing to commit"

79

我在使用Git时遇到困难,似乎无法添加我的文件。 我运行了ls命令显示这些文件在当前目录中,然后运行git add .git status命令,但是状态为“nothing to commit”。

JJ-Computer:first_app JJ$ git init

Reinitialized existing Git repository in /Users/JJ/rails_projects/first_app/.git/

JJ-Computer:first_app JJ$ ls

Diary.txt README.rdoc config.ru log   tmp
Gemfile   Rakefile  db    public    vendor
Gemfile.lock  app   doc   script
README    config    lib   test

JJ-Computer:first_app JJ$ git add .

JJ-Computer:first_app Jenn$ git status

# On branch master
nothing to commit (working directory clean)

JJ-Computer:first_app JJ$ 
16个回答

0
这可能有点傻,但可以节省一些时间:检查文件是否已经被跟踪并且没有修改:git ls-files --error-unmatch <file>。如果文件已经被跟踪,该命令不应显示任何错误。 我刚刚花了几分钟来弄清楚这个...

这似乎不是你所描述的功能?如果你想查看一个文件是否被追踪,只需运行 git ls-files <file> 即可,无需使用 error-unmatch。 - Lars

0
我的问题已经得到解决: git pull --rebase 命令在本地分支落后于远程分支的情况下非常有用。
git pull --rebase origin main

git push -u origin main 

在我的另一次尝试中,我解决了它
git rebase --continue

0

刚遇到了这个问题。对我来说,我的文件已经被添加到Git中,并且根本没有需要提交的更改。

因此,请尝试编辑文件以查看git status是否显示不同的结果;如果是,则表示您的文件已经被添加,您可以使用git checkout -p恢复文件。


0

逐个尝试git add <folder_name>

如果第一个文件夹被暂存,请尝试添加下一个文件夹。在我的情况下,我有一个文件包含一些问题。

如果直接运行git add .,而某些文件存在问题,则Git将忽略所有这些文件。虽然不是专家,但这就是发生在我身上的事情 :)


0

我在Windows上遇到了这个问题。所有现有的解决方案都没有指出我的问题。我将文件重命名,暂存,然后再将其重命名为之前的文件名,再次暂存,一切都很好。


-2

我曾经遇到过类似的问题,向已初始化的git文件夹中添加新文件时,git add <filename>无法生效。对我而言有效的方法是使用git add .。我使用的是bash 5和mac上的git 2.25。希望这能帮助其他人...干杯。


2
OP是否特别提到 git add . 对他们无效了? - Martin Véronneau

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