Apenas transformou um some.sh
arquivo em um executável ( chmod 755 ...
), as permissões foram atualizadas, mas não o conteúdo. Existe uma maneira de confirmar o arquivo no git, para que o bit executável seja restaurado / definido no clone / checkout / pull ?
Atualização: como posso acompanhar o envio das novas permissões github
?
github
?git status
vejo mudanças ..O artigo @fooMonster funcionou para mim
Como você pode ver, o arquivo tem permissão 644 (ignorando os 100). Gostaríamos de alterá-lo para 755:
comprometer as mudanças
fonte
git commit -a
não fez nada por mim, mas a configuração da mensagem na linha de comando fez. Pouco de uma peculiaridade# git update-index --chmod=+x script.sh
# git ls-tree HEAD
# git commit -m "Changing file permissions"
# git push
Não está trabalhando para mim.
O modo é verdadeiro, as permissões de arquivo foram alteradas, mas o git diz que não há trabalho a fazer.
O problema parece ser que o git reconhece apenas certas alterações de permissão.
fonte
git
realmente apenas rastreia se um arquivo é executável ou não, não o conjunto completo de permissões * nix. Então você teria que mudar um arquivo entre / executável não para que ele acha que mudaram vale alguma coisa cometer ...post-checkout
ganchogit
, que abrangeria alguns casos, mas não tenho certeza se isso abrangeria todas as coisas possíveis que atualizam arquivos na sua árvore de trabalho. Talvez seja melhor ter apenas um script de shell adicional em seu repositório que configure as coisas adequadamente. Como alternativa, há um par de projetos lá fora, que augmentgit
para armazenar metadados, mas eu realmente nunca tentou qualquer um deles ...git update-index --refresh
, mas o diff mostraold mode 100644 new mode 100755
. Não atualizou todas as permissões