phpStormプロジェクトに属する/sources
ディレクトリがあります。.idea
このディレクトリはDockerコンテナ()としてインストールされます/sources
。コンテナの起動時に実行されるスクリプトがあります。このスクリプトは、次のようないくつかの権限を設定します。VOLUME
~/sources:/var/www
chown -R www-data:www-data /var/www/sources && find /var/www/sources -type d -print0 | xargs -0
chmod 2775 && find /var/www/sources -type f -print0 | xargs -0 chmod 0664
また、これらの権限は.idea
phpStormがフォルダにアクセスするのを防ぎ、そのフォルダに書き込むことはできません。
プロジェクトを保存できません:プロジェクトファイルを保存できません。プロジェクトファイルが書き込み可能で、そのファイルを変更する権限があることを確認してください。
私はいくつかの投稿を読んだ。
- https://stackoverflow.com/questions/4210042/exclude-directory-from-find-command
- https://stackoverflow.com/questions/2065447/how-do-i-exclude-a-folder-when-performing-file-Operations-ie-cp-mv-rm-and-ch
- https://stackoverflow.com/questions/1163294/changing-chmod-for-files-but-not-directories
しかし、解決策は私とは少し異なります。.idea
上記の文を使用してディレクトリをスキップするにはどうすればよいですか?
答え1
/var/www/sources/.idea
このディレクトリとその中のすべての項目を除外するには、次の手順を実行します。
find /var/www/sources -type d -not -path '/var/www/sources/.idea*' -exec chmod 0755 {} +
find /var/www/sources -type f -not -path '/var/www/sources/.idea*' -exec chmod 0644 {} +