O Git não vai empurrar para um repositório vazio no servidor

4

Eu acabei de instalar o Gitolite em um servidor, então quaisquer repositórios que eu esteja usando nele devem ser repositórios nus, e eu até mesmo entrei nos diretórios do repositório, e executei git init --bare neles para ter certeza de que eles estão nus, mas quando tento empurrá-los, ainda recebo esta mensagem de erro:

remote: error: refusing to update checked out branch: refs/heads/master
remote: error: By default, updating the current branch in a non-bare repository
remote: error: is denied, because it will make the index and work tree inconsistent
remote: error: with what you pushed, and will require 'git reset --hard' to match
remote: error: the work tree to HEAD.
remote: error: 
remote: error: You can set 'receive.denyCurrentBranch' configuration variable to
remote: error: 'ignore' or 'warn' in the remote repository to allow pushing into
remote: error: its current branch; however, this is not recommended unless you
remote: error: arranged to update its work tree to match what you pushed in some
remote: error: other way.
remote: error: 
remote: error: To squelch this message and still keep the default behaviour, set
remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'.

Eu até mesmo executei o git config receive.denyCurrentBranch ignore para tentar obtê-lo apenas para empurrar para o repositório remoto, mas o erro ainda aparece.

Não tenho certeza do que estou fazendo de errado aqui.

    
por supercheetah 18.07.2013 / 10:05

2 respostas

0

Eu descobri que, se houver um usuário no servidor Gitolite, o Git entrará no usuário em vez de usar o Gitolite, e eu não percebi isso. E eu também tinha uma cópia do repositório que eu estava tentando colocar no meu diretório de usuários, e é claro que não estava nua.

    
por 21.07.2013 / 04:13
1

Você não deve ter que executar um git init --bare .

Simplesmente declare um novo nome de repositório no arquivo gitolite.conf do gitolite-admin repo, empurre-o de volta para o servidor gitolite e o próprio gitolite criará esse repositório corretamente (em ~/repositories/mynewrepo.git , como um repositório simples)

    
por 18.07.2013 / 10:41