[git-users] unable to push using smart http

2012-11-14 Thread kumar
Hi 
I have setup smart http and now able to clone. I am using Ubuntu 12.10. but 
when i try to push i get the following error. 

$git push http://192.168.0.66/git/gitrepos/project1.git master
Counting objects: 5, done.
Writing objects: 100% (3/3), 276 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
error: unpack failed: unpack-objects abnormal exit
To http://192.168.0.66/git/gitrepos/project1.git
! [remote rejected] master - master (n/a (unpacked error))
error: failed to puh some refs to ' 
http://192.168.0.66/git/gitrepos/project1.git'

These are the setting have done.

SetEnv GIT_PROJECT_ROOT /var/www/git
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAlias /git/ /usr/lib/git-core/git-http-backend/
SetEnv REMOTE_USER=$REDIRECT_REMOTE_USER

Directory /usr/lib/git/
AllowOverride None
Options +ExecCGI -Includes
Order allow,deny
Allow from all
/Directory

LocationMatch ^/git/.*/git-receive-pack$
AuthType Basic
AuthName Git Access
/LocationMatch

I have not added Require group committers so that i do not have to 
authenticate push. (actually not sure which username and password to use. 
Right now what to make git push working)

I have set git config http.receivepack true
I have given all permission to git folder drwxrwxrwx 3 root root 4096 Nov 
13 23:13 git

What else do i need to do to enable push
(Please note i am new to Linux and apache but learning :) )

Thanks

 

-- 




Re: [git-users] unable to push using smart http

2012-11-14 Thread kumar
Hi 

Thanks a lot. It is working now 

Directory was wrong now set to /usr/lib/git-core/ and changing the 
permission to www-data made it work 

Thanks

On Wednesday, November 14, 2012 8:54:11 PM UTC+5:30, Konstantin Khomoutov 
wrote:

 On Wed, 14 Nov 2012 05:58:47 -0800 (PST) 
 kumar t12...@gmail.com javascript: wrote: 

  I have setup smart http and now able to clone. I am using Ubuntu 
  12.10. but when i try to push i get the following error. 
  
  $git push http://192.168.0.66/git/gitrepos/project1.git master 
 [...] 
  ! [remote rejected] master - master (n/a (unpacked error)) 
  error: failed to puh some refs to ' 
  http://192.168.0.66/git/gitrepos/project1.git' 

 What puzzles me about this error is that I fail to find the 
 unpacked error phrase in the Git source tree (a version near the 1.8.0 
 release): 

 % git grep 'unpacked error' 
 % git name-rev --tags master 
 master tags/v1.8.0-rc0~48 

 Same results with the checkout of 1.7.10.4 (which your version of 
 Ubuntu seems to have packaged). 

 It might be that this error message is synthetic, but I fail to find 
 any relevant context in the results of `git grep -w unpacked` as well. 
 Again, this might signalize nothing special as I just did a quick 
 glance, but are you sure you copied and pasted the error message 
 correctly? 

  These are the setting have done. 
  
  SetEnv GIT_PROJECT_ROOT /var/www/git 
  SetEnv GIT_HTTP_EXPORT_ALL 
  ScriptAlias /git/ /usr/lib/git-core/git-http-backend/ 
  SetEnv REMOTE_USER=$REDIRECT_REMOTE_USER 
  
  Directory /usr/lib/git/ 
  AllowOverride None 
  Options +ExecCGI -Includes 
  Order allow,deny 
  Allow from all 
  /Directory 

 This setting is odd, as the directory path for which you set 
 specific options using this directory does not match that specified by 
 the ScriptAlias directive above. 

 [...] 
  I have set git config http.receivepack true 
  I have given all permission to git folder drwxrwxrwx 3 root root 4096 
  Nov 13 23:13 git 
 [...] 

 The ownership and permissions on the root directory for your Git project 
 are plain wrong -- never ever allow *everyone* read/write access to a 
 directory (unless it also has the sticky bit set on it (/tmp is one 
 example). 

 Please grant the ownership recursively to the user www-data and 
 the same-named group -- Apache on a typical Debian(-based) distro runs 
 with the credentials of this special system user [*].  Then also make 
 sure the permissions on the hierarchy is also OK.  I'm not sure this 
 will fix your problem but if we suppose the root cause of this failure 
 is the Git's inability to unpack what it received due to permission 
 problems, this might help. 

 One way to change ownership/permissions is to run: 

 $ sudo chown -R www-data:www-data /var/www/git 

 to fix ownership and then 

 $ sudo find /var/www/git -type d -exec chmod 0775 '{}' \; \ 
-o -type f -exec chmod 0664 '{}' \; 

 to fix permissions (the trailing slash on the first line is to 
 signalize the line break to fit it into the mail message -- when running 
 the command on a real system remove it and write both parts on the same 
 line). 

 [*] It's possible to use something like mod-itk to allow serving 
 different virtual hosts using different credentials but this is not 
 the regular mode of operation, so do not consider this for now. 


--