git cometer / erro de envio

Para mover um projeto no qual ativo sem controle sobre as versões do programa hoje em dia é uma loucura. Geralmente há vários bazaar de opções , Mercurial , git , svn . Então, aqui, se você pretende explicar qual controle de versão é melhor e por que não será. Nos Estados Unidos, usamos git. Causar uma série de – fácil de configurar, É muito versátil, Foi escrito por Linus Torvalds para a versão do Linux Kernel para servir, os últimos são pelo menos 2 razões 😉 . Hoje eu tive que criar um novo repositório, Eu comecei um novo projeto. Na verdade eu criei alguns repositórios e há muito tempo atrás, quando foi preciso e esqueci o finas neste Momento. Criar múltiplas armazenamento de arquivo para a primeira loja hit que tudo correu exatamente. O cenário em si era padrão:

git init
echo "Short project's description" > .git/description
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
git commit -a
touch .git/git-daemon-export-ok

Basicamente, não se passa nada. Então eu decidi testar a partir de uma máquina remota para preservar o conteúdo e tentando empurrá-lo-com minha mensagem feia aparece:

Empurrando para git://gitHost/projeto
remoto: erro: recusando-se a atualização saiu filial: refs/heads/mestre
remoto: erro: Por padrão, Atualizando o ramo atual em um repositório não-bare
remoto: erro: é negado, Porque ele vai fazer a árvore de índice e trabalho inconsistente
remoto: erro: com o que você empurrou, e exigirá ‘ git redefinir –difícil’ a combinar
remoto: erro: a árvore de trabalho a cabeça.
remoto: erro:
remoto: erro: Você pode definir ‘ receive.denyCurrentBranch’ variável de configuração para
remoto: erro: ‘ ignorar’ ou ‘ avisar’ no repositório remoto para permitir que adentrando
remoto: erro: seu ramo atual; no entanto, Isso não é recomendado a menos que você
remoto: erro: arranjado para atualizar sua árvore de trabalho para coincidir com o que você empurrou em alguns
remoto: erro: outra maneira.
remoto: erro:
remoto: erro: Silenciar esta mensagem e ainda manter o comportamento padrão, conjunto
remoto: erro: ‘ receive.denyCurrentBranch’ variável de configuração para ‘ recusar ’.
Para git://gitHost/projeto
! [controle remoto rejeitado] Mestre-> Mestre (filial atualmente check-out)
erro: Não conseguiram empurrar alguns juízes para ‘ git://gitHost/projeto’

Então, obviamente eu tento komitvam na árvore principal do projeto e o software educadamente me cortar. No geral, eu tenho nenhuma intenção de fazer o ramo adicional porque as pessoas envolvidas nos projetos são claras e uma série de outras razões. Тука идва момента да отбележа че съм дефинирал много некадърно заглавието но това е друг момент. Като цяло решението на проблема е тривиално в .git/config на проекта ви трябва да добавите следната директива:

[receive]
denyCurrentBranch = false

След това всичко си идва на мястото.

http://www.youtube.com/watch?v=16bRiH5zfOY

Deixe uma resposta

Seu endereço de email não será publicado. Campos obrigatórios são marcados *

anti SPAM *