我使用git來管理服務器上的網站。當我推送到服務器Git正在改變我的文件的權限
我有下面所示
[email protected]:myapp$ ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf("%0o ",k);print}'
total 16
755 [email protected] 18 thomas staff 612 Jun 13 15:35 application
755 [email protected] 11 thomas staff 374 Jun 12 16:25 assets
644 [email protected] 1 thomas staff 6399 Jun 22 11:45 index.php
755 [email protected] 10 thomas staff 340 May 14 15:22 system
本地資源庫我有一個使用post-receive
在apache的前面指向回購服務器上的純倉庫。 Apache的public
文件夾內容不在裸倉庫中。
[email protected]:/srv/public/myapp# ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf("%0o ",k);print}'
total 20
700 drwx------ 15 root root 4096 Jun 27 11:31 application
700 drwx------ 10 root root 4096 Jun 27 11:31 assets
600 -rw------- 1 root root 6399 Jun 27 11:31 index.php
700 drwx------ 8 root root 4096 Jun 27 11:31 system
這是造成破壞我的代碼在網絡服務器上。
我該如何解決這個問題?如果這有什麼不同,我使用gitolite。
git的服務器配置文件
[core]
repositoryformatversion = 0
filemode = true
bare = true
您是否檢查過用於創建/ srv/public/myapp repo的用戶的umask?什麼在Git配置?與文件模式相關的任何內容都改變了嗎? – bcelary
我一直在搞文件模式,我在一個地方工作,現在它是'真正'。不知道什麼是「揭密」。我有一個我用gitolite設置的git用戶。我更新了帖子。 – ThomasReggi
請參閱[這個問題](http://stackoverflow.com/questions/1071241/how-does-git-handle-folder-permission)。 – vergenzt