1

希望在 git config 中有一些设置...

我们的项目团队选择将 eclipse .project 和 .classpath 设置存储在 git 存储库中。现在,忽略或不将这些文件存储在 SCM 中是好是坏 - 问题是当在 Windows 下克隆存储库时,任何以点“。”开头的文件名。设置为系统文件,使其只读,这会导致 Eclipse 在尝试更新项目时出现错误。

无法写入文件:D:\git\SFP\framework\Auth_Server\.classpath。
D:\git\SFP_convert\framework\Auth_Server\.classpath(访问被拒绝)

那么,如何阻止 git 设置以点 '.' 开头的文件?作为系统/只读?

4

2 回答 2

1

Git 不应该更改这些权限,并且点文件并不总是被视为只读的“系统文件”。
恰当的例子:.gitignore当 repo 被克隆时,大多数 repo 中的存在应该是完全可写的,即使在 Windows 上也是如此。

Git只存储两个权限755=rwxr.xr.x, 644=rw.r..r..)。

一种方法是确保使用git config core.filemode false.

但是对于已经包含具有不正确权限的文件的存储库,您需要使用具有正确 755 权限的相同文件进行新的提交。
您可以使用反向补丁git-meta-cache.


OP Jon 报告

我们目前使用的是 msysgit 1.6.5。升级以匹配服务器上的 git 版本(1.7.9)已经解决了这个问题。

我还建议升级到最新版本(2013 年 9 月 1.8.4 日)

于 2013-09-17T06:02:27.860 回答
0

当我们将项目从系统复制到其他系统时会出现此问题,然后某些文件会自动隐藏。您进入项目目录和此项目目录。某些文件夹和文件具有隐藏属性,因此请取消选中所有文件和文件夹中的隐藏属性,然后导入项目。

于 2014-06-19T05:09:52.970 回答