在新 clone 一个项目后, 竟然发现刚 clone 的项目辩此里有脏文件, 处于 modified 状态携数迅.
并且无论 stash, 还是 add / commit 都无法消除这种状态.
看到出问题的几个文件, 都是之前毕含在 linux 里曾经改过文件名大小写的.
linux 路径区分大小写, 而 windows 不区分, 猜测这是造成问题的原因.
还一度猜测是 windows terminal 集成 wsl 里的 ubuntu 子系统有bug, 然而 windows 版本的 git 也是同样的表现就排除这个可能了.
1.项目目录下有以下文件:
2.其中,testfile.txt的内容初始只有“11111”;
3.app.py文件已被成功提交至版本库;
输入以下命令,将textfile.txt提交至暂存区:
提示发现了一个新文件(new file),表明testfile.txt已被提交至暂存区,并等待被提交至版本库(Changes to be committed)。
此时,在testfile.txt文件中再添加一行“22222”,文件内容变为:
可以看到仓库虽然追踪到了testfile.txt的改动(modified),但这个改动后的版本还没有被提交至暂存区(Changes not staged)。
输入以下命令:
可以看到以下结果:
“---”表示版本库里的版本,由于我们只是将testfile.txt提交至暂存区,但还没有将暂存区里的testfile.txt提交至版本库,因此版本库里testfile.txt的文件版本是“无”(/dev/null)。
“+++”表示当前工作区内的版本,(b/testfile.txt)
“@@ -0,0 +1,2 @@”
“-”表示版本库里的版本,如前面所述由于版本库里目前还没有testfile.txt,所以显示此时文件内容是从第0行到第0行;
“+”表示当前工作区的版本,由于模握当前文件内容已经变为两行:
+22222
表示当前工作区中testfile.txt的内容。
使用以下命令:
此时再查看仓库状态:
发现暂存区内对于testfile.txt文件已经没有了“new file”这一状态,证明testfile.txt文件的初始版本(即内容里只有一行“11111”)已被提交至版本库。
此时,再将版本库内容与工作区内旦唤庆容相比较:
由于初始版本中只有一行内容“11111”,所以初始版本状态是“-1”。
当前工作区内的testfile.txt有两行内容,所以是“+1,2”
-11111表示修改前版本内容,
+11111
+22222
表示目前工作区内textfile.txt文件的内容
再次使用“git add”命令将修改后的textfile.txt提交至暂存区:
查看此时仓库状态:
发现testfile.txt文件的“modified”状态已变为绿色,说明修改后的版本已被提交至暂存区,等待被提交至版本库。
再次使用“git commit”命令将修改后的testfile.txt版本提交至版本库:
查看此时仓库状态:
发现关于testfile.txt文件的信息已全部消失链肆,说明其修改版也已被提交至版本库。
再次使用“git diff HEAD”命令比较版本库里的版本和工作区的版本:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)