git cloneで作成されたディレクトリには「setfacl」権限が適用されませんか?

git cloneで作成されたディレクトリには「setfacl」権限が適用されませんか?

~/public_html私のWebサイトのルートディレクトリ(私のWebサイトが提供するファイルがある場所)の権限を設定する方法は次のとおりです。

sudo chgrp -R www-data ~/public_html
chmod g+s ~/public_html
chmod g+rwx ~/public_html
setfacl -m d:g:www-data:rwx ~/public_html
  • コマンド#1「www-data」グループに所有権アクセス権を付与します~/public_html
  • #2グループ内のすべての新しいディレクトリ/ファイルも、「www-data」グループが所有するようにグループIDを設定します。
  • #サムディレクトリ内の「www-data」グループのアクセス権を775に設定します。
  • #4これがにも適用されることを確認してください~/public_html

期待どおりにうまく動作します。新しく作成されたすべてのディレクトリとファイルは必須権限を継承します。

問題は生成されたディレクトリにありましたgit clone(私以降)。cd ~/public_html && git clone ....

修正する:目次するグループIDを継承します(たとえば、「www-data」は新しく作成されたディレクトリを所有しています)。しかし、アクセス権(ディレクトリの場合は775、ファイルの場合は664)また、これはgitが生成した最上位ディレクトリにすぎません。継承された権限が必要なすべてのディレクトリとファイル。 Debianのgitパッケージにこれがないかもしれませんか?このエラーを修正してくださいしかし、?

私は何が間違っていましたか?その代わりに一体どうすればいいですか?

ベストアンサー1

gitファイルが作成されたら、GIDとACLを上書きできます(mvデバイス間を移動するときの簡単な作業と同じです)。 strace() を実行してstrace -f -o git.strace -e trace=fileこれを確認できます。

おすすめ記事