LINUX.ORG.RU
ФорумAdmin

git+Redmine


0

2

Здравствуйте, у меня возникла проблема с связкой гита и редмайна. Собственно такая конфигурация git.gomain.com у меня:

<VirtualHost git.*:80>
        ServerName git.*
        ServerAlias git.*

        PerlLoadModule Apache::Redmine

        Alias /git /var/git

        <Location /git>
                DAV on
                AuthType Basic
                Require valid-user
                AuthName "Redmine git authorization:"
                PerlAccessHandler Apache::Authn::Redmine::access_handler
                PerlAuthenHandler Apache::Authn::Redmine::authen_handler

                RedmineDSN "DBI:mysql:database=redmine;host=localhost"

                RedmineDbUser "redmine"
                RedmineDbPass "ap.Di[Zo0"

                #xRedmineGitSmartHttp yes
        </Location>

        Alias /git-private /var/git

        <Location /git-private>
                Order deny,allow
                Deny from all
                <Limit GET PROPFIND OPTIONS REPORT>
                        Options Indexes FollowSymLinks MultiViews
                        Allow from 127.0.0.1
                </Limit>
        </Location>
</VirtualHost>

такая конфигурация redmine.gomain.com:

<VirtualHost redmine.*:80>
        ServerAdmin dropsql@*
        ServerName redmine.*
        errorLog logs/redmine.*-error_log
        TransferLog logs/redmine.*-access_log
        DocumentRoot /var/www/redmine.*/public/

        <Directory "/var/www/redmine.*/public/">
                Options Indexes ExecCGI FollowSymLinks
                Order allow,deny
                Allow from all
                AllowOverride all
        </Directory>
</VirtualHost>

Redmine работает хорошо, git по крону вроде как тоже создается нормально:

0-59  * * * *  /var/www/redmine.*/extra/svn/reposman.rb -s /var/git/ -r redmine.* -u /var/git/ --scm git -k SPp030YuLSC4VO8Sfbe9 -o apache --verbose

Но вот когда я пытаюсь сделать клон закрытого проекта говорит что не пройдена авторизация: «fatal: Authentication failed» А когда в открытый проект пытаюсь выполнить push говорит:

Unable to create branch path http://DropSQL@*/git/qwer/info/
error: cannot lock existing info/refs
fatal: git-http-push failed

Подскажите плз в чем может быть проблема? Может подскажете куда копать?

Заранее благодарен.

Ответ на: комментарий от Chaser_Andrey

авторизация теперь проходит, действительно участноков не добавил :(

но пуш не срабатывает всё равно, правда теперь это выглядит так: [code]error: cannot lock existing info/refs fatal: git-http-push failed[/code]

DropSQL ()
Ответ на: комментарий от Chaser_Andrey
# ps aux | grep -i apache
root      1052  0.0  2.2 300632 23952 ?        Ss   Jul12   0:02 /usr/sbin/apache2 -k start
root     22549  0.0  0.1  88864  1996 ?        Sl   14:32   0:00 /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15/ext/apache2/ApplicationPoolServerExecutable 0 /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15/bin/passenger-spawn-server  /usr/bin/ruby1.8  /tmp/passenger.1052
apache   22555  0.0  1.8 307956 19596 ?        S    14:32   0:00 /usr/sbin/apache2 -k start
apache   22564  0.4 10.7 193420 112916 ?       S    14:33   0:09 Passenger ApplicationSpawner: /var/www/redmine.neval.co.ua    
apache   22578  0.0 10.6 193916 111988 ?       S    14:33   0:01 Rails: /var/www/redmine.neval.co.ua                           
apache   22580  0.0 10.7 194444 112508 ?       S    14:33   0:02 Rails: /var/www/redmine.neval.co.ua                           
apache   22840  0.0  1.9 310028 19924 ?        S    14:47   0:00 /usr/sbin/apache2 -k start
apache   22853  0.0  1.8 307968 19528 ?        S    14:47   0:00 /usr/sbin/apache2 -k start
apache   23223  0.0  1.8 308324 19612 ?        S    15:08   0:00 /usr/sbin/apache2 -k start
apache   23224  0.0  1.8 307968 19652 ?        S    15:08   0:00 /usr/sbin/apache2 -k start
apache   23288  0.0  0.2  49988  3052 ?        S    15:12   0:00 /usr/sbin/sendmail -i -FCronDaemon -oem apache

извините, завтыкал...

DropSQL ()

попробуй разкомментировать RedmineGitSmartHttp yes

оффтоп - добавь в <VirtualHost redmine.*:80> опцию PassengerDefaultUser apache

Chaser_Andrey ★★★★★ ()
Ответ на: комментарий от Chaser_Andrey

RedmineGitSmartHttp yes

нельзя, говорит что комманда не существует:

# apache2ctl restart Syntax error on line 22 of /etc/apache2/sites-enabled/git.neval.co.ua: Invalid command 'RedmineGitSmartHttp', perhaps misspelled or defined by a module not included in the server configuration Action 'restart' failed. The Apache error log may have more information.

RedmineGitSmartHttp yes

Добавил, не помогло

Если писать login@url, ошибка:

error: cannot lock existing info/refs fatal: git-http-push failed

Если просто url и логин вводить по запросу, то:

error: Cannot access URL http://git.neval.co.ua/git/test/, return code 22 fatal: git-http-push failed

DropSQL ()
Ответ на: комментарий от Chaser_Andrey
# apache2ctl modules
Usage: /usr/sbin/apache2 [-D name] [-d directory] [-f file]
                         [-C "directive"] [-c "directive"]
                         [-k start|restart|graceful|graceful-stop|stop]
                         [-v] [-V] [-h] [-l] [-L] [-t] [-S] [-X]
Options:
  -D name            : define a name for use in <IfDefine name> directives
  -d directory       : specify an alternate initial ServerRoot
  -f file            : specify an alternate ServerConfigFile
  -C "directive"     : process directive before reading config files
  -c "directive"     : process directive after reading config files
  -e level           : show startup errors of level (see LogLevel)
  -E file            : log startup errors to file
  -v                 : show version number
  -V                 : show compile settings
  -h                 : list available command line options (this page)
  -l                 : list compiled in modules
  -L                 : list available configuration directives
  -t -D DUMP_VHOSTS  : show parsed settings (currently only vhost settings)
  -S                 : a synonym for -t -D DUMP_VHOSTS
  -t -D DUMP_MODULES : show all loaded modules
  -M                 : a synonym for -t -D DUMP_MODULES
  -t                 : run syntax check for config files
  -X                 : debug mode (only one worker, do not detach)
Action 'modules' failed.
The Apache error log may have more information.

у меня версия 1.2 или 1.2.1

DropSQL ()
Ответ на: комментарий от Chaser_Andrey
$ sudo apache2ctl -t -D DUMP_MODULES
Loaded Modules:
 core_module (static)
 log_config_module (static)
 logio_module (static)
 mpm_prefork_module (static)
 http_module (static)
 so_module (static)
 alias_module (shared)
 auth_basic_module (shared)
 authn_file_module (shared)
 authz_default_module (shared)
 authz_groupfile_module (shared)
 authz_host_module (shared)
 authz_user_module (shared)
 autoindex_module (shared)
 cgi_module (shared)
 dav_module (shared)
 dav_fs_module (shared)
 dav_svn_module (shared)
 authz_svn_module (shared)
 deflate_module (shared)
 dir_module (shared)
 env_module (shared)
 mime_module (shared)
 negotiation_module (shared)
 passenger_module (shared)
 perl_module (shared)
 php5_module (shared)
 reqtimeout_module (shared)
 rewrite_module (shared)
 setenvif_module (shared)
 status_module (shared)
Syntax OK
DropSQL ()
Ответ на: комментарий от Chaser_Andrey

Пропатчить ничего не получилось,кроме последнего патча, выдает ошибки. В общем не помогло... Кстати, может поможет. При пуше запрашивает 2 раза пароль, после второго раза пишет:

error: cannot lock existing info/refs
fatal: git-http-push failed

DropSQL ()
Ответ на: комментарий от Chaser_Andrey

/var/log/apache2/error.log

[Thu Jul 14 12:33:55 2011] [notice] Apache/2.2.16 (Debian) DAV/2 SVN/1.6.12 Phusion_Passenger/2.2.15 PHP/5.3.3-7+squeeze3 with Suhosin-Patch mod_perl/2.0.4 Perl/v5.10.1 configured -- resuming normal operations
[Thu Jul 14 12:35:13 2011] [error] [client 109.168.237.64] Could not LOCK /git/mnb/info/refs due to a failed precondition (e.g. other locks).  [500, #0]
[Thu Jul 14 12:35:13 2011] [error] [client 109.168.237.64] The locks could not be queried for verification against a possible "If:" header.  [500, #0]
[Thu Jul 14 12:35:13 2011] [error] [client 109.168.237.64] Could not open the lock database.  [500, #400]
[Thu Jul 14 12:35:13 2011] [error] [client 109.168.237.64] (13)Permission denied: Could not open property database.  [500, #1]
/var/log/apache2/other_vhosts_access.log
git.neval.co.ua:80 109.168.237.64 - - [14/Jul/2011:12:34:26 +0400] "GET /git/mnb/info/refs?service=git-upload-pack HTTP/1.1" 200 233 "-" "git/1.7.5.GIT"
git.neval.co.ua:80 109.168.237.64 - - [14/Jul/2011:12:34:26 +0400] "GET /git/mnb/HEAD HTTP/1.1" 200 258 "-" "git/1.7.5.GIT"
git.neval.co.ua:80 109.168.237.64 - - [14/Jul/2011:12:35:05 +0400] "GET /git/mnb/info/refs?service=git-receive-pack HTTP/1.1" 401 765 "-" "git/1.7.5.GIT"
git.neval.co.ua:80 109.168.237.64 - Monah [14/Jul/2011:12:35:05 +0400] "GET /git/mnb/info/refs?service=git-receive-pack HTTP/1.1" 200 233 "-" "git/1.7.5.GIT"
git.neval.co.ua:80 109.168.237.64 - - [14/Jul/2011:12:35:05 +0400] "GET /git/mnb/HEAD HTTP/1.1" 200 258 "-" "git/1.7.5.GIT"
git.neval.co.ua:80 109.168.237.64 - - [14/Jul/2011:12:35:12 +0400] "PROPFIND /git/mnb/ HTTP/1.1" 207 747 "-" "git/1.7.5.GIT"
git.neval.co.ua:80 109.168.237.64 - - [14/Jul/2011:12:35:12 +0400] "HEAD /git/mnb/info/refs HTTP/1.1" 200 214 "-" "git/1.7.5.GIT"
git.neval.co.ua:80 109.168.237.64 - - [14/Jul/2011:12:35:12 +0400] "HEAD /git/mnb/objects/info/packs HTTP/1.1" 200 233 "-" "git/1.7.5.GIT"
git.neval.co.ua:80 109.168.237.64 - - [14/Jul/2011:12:35:12 +0400] "MKCOL /git/mnb/info/ HTTP/1.1" 405 519 "-" "git/1.7.5.GIT"
git.neval.co.ua:80 109.168.237.64 - - [14/Jul/2011:12:35:12 +0400] "LOCK /git/mnb/info/refs HTTP/1.1" 500 859 "-" "git/1.7.5.GIT"

Вот, по гиту вроде бы всё..

DropSQL ()
Ответ на: комментарий от Chaser_Andrey

По сути не принципиально... Но реально не думаю что будет много толка... там всё тоже? мне просто пуш выполнить и всё :) говорят что дело в клиенте, но я чет не уверен... https://bugs.launchpad.net/ubuntu/ source/git-core/ bug/293553 говорят что это реально помогает... но чет мне какт не помогло ничего... Что-то всёже кажется что дело в конфиге сервера! :(

DropSQL ()
Ответ на: комментарий от Chaser_Andrey
# git --version
git version 1.7.2.5

кажись оно? или дет в другом месте посмотреть?

DropSQL ()
Ответ на: комментарий от Deleted

клиент tortoiseSVN

git.exe push --progress  "origin" master:master

error: Cannot access URL http://git.neval.co.ua/git/test/, return code 22
fatal: git-http-push failed
таким вот образом

DropSQL ()
Ответ на: комментарий от DropSQL

Ах вот оно что. Попробуй сделать push из-под Linux/*BDS системы (даже в виртуалку поставить достаточно). У меня с tortoiseGit тоже возникли проблемы, в то же время с нативным Git всё ок.

Chaser_Andrey ★★★★★ ()
Ответ на: комментарий от Chaser_Andrey

ну у меня git push не работает... а какие параметры указать хз.

# git push
Username:
Password:
No refs in common and none specified; doing nothing.
Perhaps you should specify a branch such as 'master'.
Everything up-to-date

Вот как выходит :)

DropSQL ()
Ответ на: комментарий от Chaser_Andrey
# git push http://Monah@git.neval.co.ua/git/turbosms-programming master
Password:
Password:
error: cannot lock existing info/refs
fatal: git-http-push failed

То же самое, 2 раза спрашивает пароль и выдает такую ошибку, делаю в Debian.

DropSQL ()
Ответ на: комментарий от DropSQL

Поставь, пожалуйста, ChiliProject в виртуалке или на чистый дистрибутив и проверь. Какой у тебя дистрибутив и его разрядность?

Chaser_Andrey ★★★★★ ()
Ответ на: комментарий от DropSQL

Кстати, за милую душу поднимается, только public ssh ключ если будешь генерить через puttygen копипасть, а не сохраняй кнопкой.

Deleted ()
Ответ на: комментарий от Deleted

Вроде бы заново решил переставить, вот теперь такое :(

error: Cannot access URL http://git.neval.co.ua/git/turbosms-programming/, return code 22
fatal: git-http-push failed

видать это совсем кривые руки :( В инете не могу пока найти решение... если чтот подскажет, буду очень благодарен!

DropSQL ()
24 ноября 2011 г.
10 февраля 2012 г.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.