如何混帐夹柄许可?如何混帐夹柄许可?(How does git handle folder perm

2019-05-14 10:40发布

我使用Git版本1.5.6.3,这似乎混帐没有注意到一个文件夹的模式改变

#create a test repository with a folder with 777 mode
:~$ mkdir -p test/folder
:~$ touch test/folder/dummy.txt
:~$ cd test
:~/test$ chmod 777 folder/

#init git repository
:~/test$ git init
Initialized empty Git repository in ~/test/.git/
:~/test$ git add .
:~/test$ git commit -m 'commit a directory'
Created initial commit 9b6b21a: commit a directory
 0 files changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 folder/dummy.txt

#change folder permission to 744
:~/test$ chmod 744 folder/
:~/test$ git status 
# On branch master
nothing to commit (working directory clean)

什么是04000立场?

:~/test$ git ls-tree HEAD folder
040000 tree 726c1d5f0155771348ea2daee6239791f1cd7731    folder

这是正常的行为呢?

如何跟踪文件夹模式的变化?

Answer 1:

唯一的“权限”位的是git曲目是文件的可执行位,模式位的其余部分描述什么类型的文件系统对象的对象在每个git的树。 git支持文件和符号链接(斑点),目录(树)和子模块(提交)。

git旨在帮助在不同的计算机跟踪源代码。 权限位依赖机器之间用户和组映射。 在分布式环境中,这些映射不存在,跟踪权限位通常最终阻碍的东西,而不是帮助什么。

如果您需要跟踪更多的文件系统属性是什么git轨道本身,你可以考虑和扩展工具,如etckeeper 。



文章来源: How does git handle folder permission?