O Midnight Commander não tem esse tipo de controle sobre as operações de subdiretórios. Tipo de acordo do tipo "tudo ou nada". Como você disse, você pode controlar as entradas de nível superior, mas nada mais.
Suponho que você poderia escrever algum tipo de script para ser usado no menu F2 ...
Outra maneira, meio kludgy, mas funcionaria ...
find . -type d -name ".git" -exec chmod 000 "{}" \;
O que tornaria todos os subdiretórios .git ilegíveis, o MC mostraria um diálogo de erro, informaria 'Continuar' e continuaria processando.
Depois:
find . -type d -name ".git" -exec chmod 750 "{}" \;
para restaurar as permissões desejadas. (Eu uso 750 e 640, muitos preferem 755 e 644 ... use o que você preferir no lugar do '750')
Ha! e como uma mistura da minha ideia 'coloque no menu F2' ... você poderia colocar esses dois comandos no menu F2 ... tornando isso quase (quase!) indolor.
EDITAR:
Por solicitação:
#
# Restore permissions for any .git subdirectories to 755
g Restore .git directories to 755 permissions
if [ "x$PWD" = "x$HOME" ]; then
exit
fi
find . -type d -name ".git" -exec chmod 755 "{}" \; 2>/dev/null
#
# Remove permissions for any .git subdirectories
G Hide .git directories with 000 permissions
if [ "x$PWD" = "x$HOME" ]; then
exit
fi
find . -type d -name ".git" -exec chmod 000 "{}" \; 2>/dev/null
#
Salve isso no arquivo ' ~ / .config / mc / menu '
Se este arquivo já existir, acrescente-o ao END (certas coisas devem estar primeiro no arquivo, não quero estragar tudo).
Se este arquivo não existisse, as entradas aqui substituirão todas as entradas de menu padrão F2 / Usuário que foram vistas normalmente. Se você precisar dessas entradas de menu de volta (algumas são úteis!), Então encontre o arquivo chamado mc.menu (normalmente encontrado em / etc / mc / ), copie-o para ~ / .config / mc / menu e, novamente, anexe o acima ao final. O FIM!
Se você estiver usando uma versão mais antiga do mc , talvez seja necessário procurar o arquivo mc.menu e o menu arquivo precisa estar em ~ / .mc.menu ... complicado, sim, um pouco. Mas recentemente, o mc revisou seus locais de arquivos de configuração para refletir as melhores práticas (sugestões de XDG) e moveu tudo para ~ / .config / mc / . A página do manual mc (1) é muito útil, procure por menu do usuário .
Isso adiciona dois comandos:
g (lowercase g) which will RESTORE the 755 permissions for any .git subdirs
G (uppercase g) which will REMOVE the permissions (set to 000) from any .git subdirs
Eu adicionei um teste para evitar que isso acontecesse em seu $ HOME, embora isso não seja destrutivo ... ele simplesmente não se sente bem sendo capaz de fazer isso lá.
Aproveite!