我遇到了一个有趣的挑战。
在Windows 8.1上使用Git版本控制执行我的第一步我设置了一个文件夹,添加了文件,然后按照教程进行操作。简单。一段时间后,我注意到Windows资源管理器不再向我显示一些文件(我认为这是在使用结帐后但无法确认)。使用git bash和ls命令,我仍然可以看到它们。
经过一番研究后,我可以将它带到我使用以下代码的地步:
touch gittest.txt
使用
时在git bash中ls
它显示了我的文件。
在Windows资源管理器中,我看不到它。
我认为这是某种许可问题。我无法在Windows资源管理器中创建文件,因为我在Apache htdocs-Folder中工作并需要Admin-Rights。所以我所做的就是在其他地方创建“wintest.txt”并将其移动到该文件夹。
在资源管理器中我只看到那个文件,在git bash中我看到了两个:
ls -al
drwxr-xr-x 10 hogan Aminist 4096 Apr 3 15:00 .
drwxr-xr-x 7 hogan Aminist 4096 Apr 3 15:00 ..
-rw-r--r-- 1 hogan Aminist 0 Apr 3 15:00 gittest.txt
-rw-r--r-- 1 hogan Aminist 0 Apr 3 15:00 wintest.txt
这里的权限似乎没问题,但我想无论如何都缺少某些东西。 文件gittest.txt也没有隐藏。我在资源管理器中尝试了这个开关。
另一件显而易见的事情是:我打开带有Admin-Rights的Windows命令提示符,更改为相关目录并输入相应的命令dir,dir / A:H ......
没有文件“gittest.txt”。
Windows平台的git版本为1.9.5。
也很有趣。我这样做了:
echo 'something' > overwrite.txt
(在资源管理器中我看不到它。)
创建一个名称和内容相同的文件“done”。将其移至文件夹,毫无疑问“你想覆盖文件吗?”。
从资源管理器中打开文件 - 显示“已完成”。 在git bash中打开它,它显示“某事”。
在Windows中打开并编辑另一个文件后,我可以通过'vim xyzFile.txt'看到bash中的更改。这意味着我肯定会在同一个文件夹中查找。
当我首先使用vim“xyzFile.txt”在bash中打开文件然后保存它时,它在资源管理器中消失了。
任何人都可以给我一个提示,在那里搜索下一个并从这一点开始继续吗? 请随时询问更多信息。
答案 0 :(得分:1)
这似乎是一个许可问题。情况并没有完全解决,但目前有一种解决方法对我来说很好。
<强>解决方案:强> 将文件夹权限更改为运行git bash语句的用户的完全访问权限。
原因是在Windows系统上安装Apache时,包含htdocs的整个文件夹的权限设置有限。每当有人想要创建文件时,他们都需要管理员权限。
当启动git bash时,它以某种方式以自己的方式进行更改,但这对“普通”Windows用户没有影响。需要说明的是:在git bash中,文件创建(如果有内容)也可以使用,您可以按预期查看,打开和编辑文件。在Windows中没有任何影响。 (现在我猜Git在后台创建了自己的数据库并与之合作,而不考虑真实环境。)
在授予特定用户的完全权限后,不再有任何问题。