我正在子模块中工作,遇到了取消跟踪一个文件夹中所有文件的问题。
$ 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: public/javascripts/app/fckeditor/editor/skins/office2003/fck_dialog.css
# modified: public/javascripts/app/fckeditor/editor/skins/office2003/fck_editor.css
# modified: public/javascripts/app/fckeditor/editor/skins/silver/fck_dialog.css
# modified: public/javascripts/app/fckeditor/editor/skins/silver/fck_editor.css
# modified: public/javascripts/app/fckeditor/fckconfig.js
# modified: public/javascripts/app/fckeditor/fckeditor.js
# modified: public/javascripts/app/fckeditor/fckpackager.xml
我输入
git reset --hard
该命令返回
HEAD现在指向 b2c5a77,无任何更改
但是当我输入
git status
我又被一个长长的文件列表打招呼了。我曾尝试过...
git clean -f
我还删除了整个子模块并从主服务器检出。 我还尝试删除了包含子模块的整个项目,然后拉取它,但是无济于事。
rm -rf project
git clone foo@bar.project.net:/home/rails/repo/gits/project.com
#Cloning into project...
#remote: Counting objects: 2452, done.
#remote: Compressing objects: 100% (2040/2040), done.
#remote: Total 2452 (delta 1238), reused 582 (delta 145)
#Receiving objects: 100% (2452/2452), 561.32 KiB | 438 KiB/s, done.
#Resolving deltas: 100% (1238/1238), done.
cd project.com
git submodule init
git submodule update
#Cloning into vendor/plugins/project_engine...
cd vendor/plugins/project_engine
$ 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: public/javascripts/app/fckeditor/editor/skins/office2003/fck_dialog.css
# modified: public/javascripts/app/fckeditor/editor/skins/office2003/fck_editor.css
# modified: public/javascripts/app/fckeditor/editor/skins/silver/fck_dialog.css
# modified: public/javascripts/app/fckeditor/editor/skins/silver/fck_editor.css
# modified: public/javascripts/app/fckeditor/fckconfig.js
# modified: public/javascripts/app/fckeditor/fckeditor.js
# modified: public/javascripts/app/fckeditor/fckpackager.xml
唯一能够删除这些文件的方法似乎是在我的Mac上以另一个用户身份登录,这让我想到这可能是我的本地机器的问题,而不是仓库本身的问题。
我还尝试了卸载和重新安装GIT,并且目前正在运行1.7.5.4版本的安装程序,并使用brew(Ruby软件包管理器)进行编译。
如何从git状态中删除这些文件?
git status
在git reset --hard
后仍然显示文件为“更改但未更新”的说法非常令人惊讶。你确定你没有在超级模块中执行git reset --hard
,而在子模块中执行git status
吗? 你是否设置了任何清理或过滤器? 你设置了core.autocrlf
吗? - Mark Longairrm project
是一个目录,那么显然会是一个错误,因此可能缺少其他错误输出...) - Mark Longair