Git解决nothing to commit,working tree clean
的有关信息介绍如下:
Git是我们在日常开发中常用的版本控制的工具,这里给说一下今天遇到一个比较奇怪的问题,分为两种情况给大家讲解一下。
第一种就是属于正常情况的这种显示。
第二种是由于git设置为忽略大小写导致这种显示。可以修改当前项目的设置
git config core.ignorecase false 从而不忽略大小写
说这个之前,先说一下Git的几个区:
工作区:也就是本地文件的区域
版本库中暂存区:就是使用git add命令之后,本地工作区的文件加到暂存区
版本库当前分支:也就是使用 git commit 之后,暂存区的东西到版本库当前分支。
而这里出现这个错误的原因就是:暂存区没东西或者东西都提交到版本库当前分支。且工作区中的文件都被git跟踪了(即为都git add了)
下面给大家演示一下每个阶段的状态。
第一:创建git版本库,但是目录没有文件。
就会提示nothing to commit (create/copy files and use "git add" to track),就是不能提交,希望你复制或新建文件,并且使用add命令
第二:工作区有文件,但是没有进行add命令。
就会提示:nothing added to commit but untracked files present (use "git add" to track)
含义就是不能提交,但是有没被git跟踪的文件存在(就是没有进行add命令),希望你使用add命令。
三:使用了add命令之后
提示Changes to be committed: (use "git rm --cached..." to unstage)。
即为缓存区有东西能提交,并提示你可以使用git rm -- cached 命令将暂存区中的文件删除(不影响本地)
第四种:也就是文章标题的这种,不能提交且工作数里面也是空的。nothing to commit, working tree clean 。
所以出现这种问题,首先应该想一下自己是不是已经提交过一次了
还有一种情况就是,我修改了文件,但是我没有改内容,只是改变了大小写,但是git设置了忽略大小写导致git判断我没有更改,从而不能commit。
第一步,创建git仓库,文件readme.txt添加并提交
然后修改文件名为Readme.txt,再次添加并提交出现这个错误nothing to commit,working tree clean。所以这里是有问题的,应该是能提交的
最后通过修改当前git项目取消忽略大小写的设置。git config core.ignorecase false,然后再添加并提交就可以了
上面的git config core.ignorecase false是修改当前的项目设置为不忽略大小写,git config --global core.ignorecase false设置全局都不忽略大小写



