Não sei de cabeça a linguagem markdown, então esse editor facilita muito na hora de escrever os README.md =)
Categoria: git
Criando usuário para permitir acessso apenas ao repositório GIT
O git dispõe de um shell especial, aonde todas as funcionalidades do git permanecem ativas, porém sem acesso ao shell do sistema.
[10:53:39 root@localhost app]# which git-shell /usr/bin/git-shell [10:53:45 root@localhost app]# usermod -s /usr/bin/git-shell usuario-git
O mais engraçado é a mensagem que é exibida quando tentamos logar em usuário com esse shell! XD
[10:55:27 root@localhost app]# su - usuario-git fatal: What do you think I am? A shell?
Lembrando que se alguém aí está procurando uma hospedagem com git, recomendo a KingHost
Forçar git a soberscrever arquivos locais em um pull
Tenho um script que automatiza os commits/pulls em um repositorio git que, na realidade não utilizo para versionamento, e sim para controlar quando alguem faz modificações não autorizadas com possibilidade de rollback.
Em um determinado momento o script parava no pull (custei a perceber isso) o que acontecia por causa da necessidade de merge.
Assim, para forçar um overwrite de arquivos locais (merge bypass) usamos o comando abaixo:
git reset --hard HEAD git pull
Problemas com .gitignore
Esses dias foi necessário adicionar um arquivo já existente em um diretorio GIT ao .gitignore
Entretanto, como este arquivo já estava no projeto, a linha do .gitignore é ignorada (ironico, não?)
A solução é usar o utilizatior de remoção do git (muita hora nessa calma) usando a opção –cached conforme abaixo:
git rm --cached nome_do_arquivo.ext git add . git commit -m "ajustando .gitignore"
Para remover todo um diretorio do cache:
git rm -r --cached diretorio git add . git commit -m "ajustando .gitignore"