Gitolite3 não está escrevendo

2

Estou um pouco no fim do mundo aqui. Eu quero instalar o gitolite3 smart http sobre o apache. Eu posso puxar com sucesso, mas não empurrar (nem sequer me dá quaisquer erros ou avisos, nem mesmo em qualquer log conhecido). Eu desativei o selinux até descobrir o que está errado. Meu sistema operacional é o CentOS6.4. Estou colando todos os meus confs e logs relevantes, mas todos parecem bem ..

Qual é o (s) próximo (s) passo (s) para eu olhar?

Alguém pode me dizer se as entradas de log do gitolite3 para chamadas enviadas são diferentes das minhas abaixo?

Processo:

$ git clone http://flo@server/git/testing
$ cd testing/
$ echo "This is a test" > testing.txt
$ git add testing.txt 
$ git status
$ git commit -am "Added test file"
$ git status
$ git push http://flo@server/git/testing
$ cd ..
$ rm -rf testing
$ git clone http://flo@server/git/testing
$ ll testing
total 0

/ etc / httpd / logs / access_log

10.42.43.1 - - [07/Aug/2013:11:43:09 +0100] "GET /git/testing/info/refs?service=git-upload-pack HTTP/1.1" 401 481 "-" "git/1.7.1"
10.42.43.1 - uncleflo [07/Aug/2013:11:43:09 +0100] "GET /git/testing/info/refs?service=git-upload-pack HTTP/1.1" 200 38 "-" "git/1.7.1"
10.42.43.1 - - [07/Aug/2013:11:44:01 +0100] "GET /git/testing/info/refs?service=git-receive-pack HTTP/1.1" 401 481 "-" "git/1.7.1"
10.42.43.1 - uncleflo [07/Aug/2013:11:44:01 +0100] "GET /git/testing/info/refs?service=git-receive-pack HTTP/1.1" 200 151 "-" "git/1.7.1"
10.42.43.1 - - [07/Aug/2013:11:54:54 +0100] "GET /git/testing/info/refs?service=git-upload-pack HTTP/1.1" 401 481 "-" "git/1.7.1"
10.42.43.1 - uncleflo [07/Aug/2013:11:54:54 +0100] "GET /git/testing/info/refs?service=git-upload-pack HTTP/1.1" 200 38 "-" "git/1.7.1"

/etc/httpd/logs/suexec.log

[2013-08-07 11:43:09]: uid: (650/gitolite3) gid: (650/gitolite3) cmd: gitolite-suexec-wrapper.sh
[2013-08-07 11:44:01]: uid: (650/gitolite3) gid: (650/gitolite3) cmd: gitolite-suexec-wrapper.sh
[2013-08-07 11:54:54]: uid: (650/gitolite3) gid: (650/gitolite3) cmd: gitolite-suexec-wrapper.sh

/var/lib/gitolite3/.gitolite/logs/gitolite-2013-08.log

2013-08-07.11:43:09 6104        access(testing, uncleflo, R, 'any'),-> refs/.*
2013-08-07.11:43:09 6104        trigger,Writable,access_1,ACCESS_1,testing,uncleflo,R,any,refs/.*
2013-08-07.11:43:09 6104    pre_git testing uncleflo    R   any -> refs/.*
2013-08-07.11:43:09 6104        system,git,http-backend
2013-08-07.11:43:09 6104    END
2013-08-07.11:44:01 6122        access(testing, uncleflo, W, 'any'),-> refs/.*
2013-08-07.11:44:01 6122        trigger,Writable,access_1,ACCESS_1,testing,uncleflo,W,any,refs/.*
2013-08-07.11:44:01 6122    pre_git testing uncleflo    W   any -> refs/.*
2013-08-07.11:44:01 6122        system,git,http-backend
2013-08-07.11:44:01 6122    END
2013-08-07.11:54:55 6226        access(testing, uncleflo, R, 'any'),-> refs/.*
2013-08-07.11:54:55 6226        trigger,Writable,access_1,ACCESS_1,testing,uncleflo,R,any,refs/.*
2013-08-07.11:54:55 6226    pre_git testing uncleflo    R   any -> refs/.*
2013-08-07.11:54:55 6226        system,git,http-backend
2013-08-07.11:54:55 6226    END

Para o repo de teste: gitolite-admin / conf / gitolite.conf

repo testing
    RW+     =   @all
    RW+     =   daemon

/etc/httpd/conf.d/gitolite3.conf

<VirtualHost *:80>
#    ServerName        git.example.com
#    ServerAlias       git
#    ServerAdmin       [email protected]

    DocumentRoot /var/www/git
    <Directory /var/www/git>
        Options       None
        AllowOverride none
        Order         allow,deny
        Allow         from all
    </Directory>

    SuexecUserGroup gitolite3 gitolite3
    ScriptAlias /git/ /var/www/bin/gitolite-suexec-wrapper.sh/
    ScriptAlias /gitmob/ /var/www/bin/gitolite-suexec-wrapper.sh/

    <Location /git>
        AuthType Basic
        AuthName "Git Access"
        Require valid-user
        AuthUserFile /etc/httpd/git.passwd
    </Location>
</VirtualHost>

/var/www/bin/gitolite-suexec-wrapper.sh

#!/bin/bash
#
# Suexec wrapper for gitolite-shell
#

export GIT_PROJECT_ROOT="/var/lib/gitolite3/repositories"
export GITOLITE_HTTP_HOME="/var/lib/gitolite3"

exec /usr/share/gitolite3/gitolite-shell
    
por Florian Mertens 07.08.2013 / 13:05

2 respostas

1

Em um repositório vazio, você deve primeiro criar uma filial antes de confirmar:

git checkout -b master         # creates the master branch
echo ...                       # creates the test file
git commit -am "first commit"  # commit in the right branch
git push -u origin master      # actually push something

O próximo envio só precisará de git push .

Veja " Por que eu preciso explicitamente enviar uma nova ramificação? " para saber mais sobre essa etapa inicial.

Se você não criar uma filial, estará cometendo uma cabeça separada , que nunca é empurrado (daí a falta de mudanças visíveis no lado remoto - gitolito)

    
por 07.08.2013 / 13:45
0

Também tenho algum problema ao configurar o http inteligente com o gitolite. Depois de feito com sucesso eu escrevi um como no meu blog postar .

    
por 07.08.2013 / 14:18