gitolite installation issue
Has any one tryied the easy install option of gitolite?
I am trying to install gitolite from my windows (workstation ) to a solaris box.[command used to install]
./gl-easy-install -q git sjcfsap1 git
The command breaks at the following place .
*Y*ou are logging into system : [gitserver]
cloning gitolite-admin repo...
Initialized empty Git repository in c:/Documents and Settings/chandve/gitolite-a
dmin/.git/
Password:
fatal: 'gitolite-admin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly**
Has any one encountered this issue? Do you think gitolite is worth this effort? I am looking to evaluate ACL for Git.
Thanks for your response in advance.
[The complete command execution log below]
CHANDVE@CHANDVE /c/git/repos/gitolite/src (master)
$ ./gl-easy-install git sjcfsap1 git
------------------------------------------------------------------------
you are upgrading v1.5.3-13-g20c2e1a to v1.5.3-13-g20c2e1a
Note: getting '(unknown)' for the 'from' version should only happen once.
Getting '(unknown)' for the 'to' version means you are probably installing
from a tar file dump, not a real clone. This is not an error but it's nice to
have those version numbers in case you need support. Try and install from a
clone
...press enter to continue or Ctrl-C to bail out
------------------------------------------------------------------------
the next command will create a new keypair for your gitolite access
The pubkey will be /c/Documents and Settings/chandve/.ssh/git.pub. You will hav
e to choose a
passphrase or hit enter for none. I recommend not having a passphrase for
now, *especially* if you do not have a passphrase for the key which you are
already using to get server access!
Add one using 'ssh-keygen -p' after all the setup is done and you've
successfully cloned and pushed the gitolite-admin repo. After that, install
'keychain' or something similar, and add the following command to your bashrc
(since this is a non-default key)
ssh-add $HOME/.ssh/git
This makes using passphrases very convenient.
...press enter to continue or Ctrl-C to bail out
------------------------------------------------------------------------
Hmmm... pubkey /c/Documents and Settings/chandve/.ssh/git.pub exists; should I j
ust (re-)use it?
IMPORTANT: once the install completes, *this* key can no longer be used to get
a command line on the server -- it will be used by gitolite, for git access
only. If that is a problem, please ABORT now.
doc/6-ssh-troubleshooting.mkd will explain what is happening here, if you need
more info.
...press enter to continue or Ctrl-C to bail out
------------------------------------------------------------------------
your $HOME/.ssh/config already has settings for gitolite. I will assume
they're correct, but if they're not, please edit that file, delete that
paragraph (that line and the following few lines), Ctrl-C, and rerun.
In case you want to check right now (from another terminal) if they're
correct, here's what they are *supposed* to look like:
host gitolite
user git
hostname sjcfsap1
port 22
identityfile ~/.ssh/git
...press enter to continue or Ctrl-C to bail out
gitolite.pm 100% 26KB 26.3KB/s 00:00
gl-auth-command 100% 8319 8.1KB/s 00:00
gl-compile-conf 100% 26KB 25.6KB/s 00:00
gl-conf-convert 100% 2325 2.3KB/s 00:00
gl-easy-install 100% 23KB 23.2KB/s 00:00
gl-emergency-addkey 100% 1295 1.3KB/s 00:00
gl-install 100% 4087 4.0KB/s 00:00
gl-setup 100% 3081 3.0KB/s 00:00
gl-system-install 100% 1814 1.8KB/s 00:00
gl-tool 100% 2145 2.1KB/s 00:00
output.txt 100% 60KB 60.2KB/s 00:00
sshkeys-lint 100% 2962 2.9KB/s 00:00
example.conf 100% 12KB 12.1KB/s 00:00
example.gitolite.rc 100% 8390 8.2KB/s 00:00
VERSION 100% 19 0.0KB/s 00:00
0-INSTALL.mkd 100% 12KB 11.6KB/s 00:00
1-migrate.mkd 100% 3569 3.5KB/s 00:00
2-admin.mkd 100% 9063 8.9KB/s 00:00
3-faq-tips-etc.mkd 100% 29KB 29.0KB/s 00:00
4-wildcard-repositories.mkd 100% 12KB 11.8KB/s 00:00
5-delegation.mkd 100% 6143 6.0KB/s 00:00
6-ssh-troubleshooting.mkd 100% 19KB 19.5KB/s 00:00
7-install-transcript.mkd 100% 8372 8.2KB/s 00:00
9-gitolite-and-ssh.mkd 100% 7798 7.6KB/s 00:00
9-packaging.mkd 100% 2257 2.2KB/s 00:00
9-uninstall.mkd 100% 2791 2.7KB/s 00:00
admin-defined-commands.mkd 100% 9700 9.5KB/s 00:00
big-config.mkd 100% 6469 6.3KB/s 00:00
CHANGELOG 100% 3873 3.8KB/s 00:00
COPYING 100% 18KB 17.9KB/s 00:00
hook-propagation.mkd 100% 7654 7.5KB/s 00:00
overkill.mkd 100% 2059 2.0KB/s 00:00
progit-article.mkd 100% 12KB 12.5KB/s 00:00
report-output.mkd 100% 1818 1.8KB/s 00:00
shell-games.mkd 100% 3363 3.3KB/s 00:00
gitolite-hooked 100% 0 0.0KB/s 00:00
update 100% 4728 4.6KB/s 00:00
post-update 100% 943 0.9KB/s 00:00
------------------------------------------------------------------------
the gitolite rc file needs to be edited by hand. The defaults are sensible,
so if you wish, you can just exit the editor.
Otherwise, make any changes you wish and save it. Read the comments to
understand what is what -- the rc file's documentation is inline.
Please remember this file will actually be copied to the server, and that all
the paths etc. represent paths on the server!
...press enter to continue or Ctrl-C to bail out
------------------------------------------------------------------------
Oh hey... you already had a '.gitolite.rc' file on the server.
Let's see if we can use that instead of the default one...
...press enter to continue or Ctrl-C to bail out
.gitolite.rc 100% 8390 8.2KB/s 00:00
------------------------------------------------------------------------
ignore any 'please edit this file' or 'run this command' type lines in the
next set of command outputs coming up. They're only relevant for a manual
install, not this one...
...press enter to continue or Ctrl-C to bail out
*** WARNING ***: looks like an upgrade... ignoring argument 'git'
/export/home/git/repositories already exists
/export/home/git/.gitolite already exists
/export/home/git/.gitolite/conf already exists
/export/home/git/.gitolite/doc already exists
/export/home/git/.gitolite/keydir already exists
/export/home/git/.gitolite/logs already exists
/export/home/git/.gitolite/src already exists
/export/home/git/.gitolite/hooks already exists
/export/home/git/.gitolite/hooks/common already exists
/export/home/git/.gitolite/hooks/gitolite-admin already exists
copying post-update hook to gitolite-admin repo...
Pseudo-terminal will not be allocated because stdin is not a terminal.
stty: : Invalid argument
You are logging into system : sjcfsap1
/export/home/git/repositories already exists
/export/home/git/.gitolite already exists
/export/home/git/.gitolite/conf already exists
/export/home/git/.gito开发者_高级运维lite/doc already exists
/export/home/git/.gitolite/keydir already exists
/export/home/git/.gitolite/logs already exists
/export/home/git/.gitolite/src already exists
/export/home/git/.gitolite/hooks already exists
/export/home/git/.gitolite/hooks/common already exists
/export/home/git/.gitolite/hooks/gitolite-admin already exists
copying post-update hook to gitolite-admin repo...
------------------------------------------------------------------------
now we will clone the gitolite-admin repo to your workstation and see if it
all hangs together. We'll do this in your $HOME for now, and you can move
it elsewhere later if you wish to.
...press enter to continue or Ctrl-C to bail out
Initialized empty Git repository in c:/Documents and Settings/chandve/gitolite-a
dmin/.git/
Password:
Password:
fatal: 'gitolite-admin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
This can occur if on the server, the git
user has a key in ~/.ssh/authorized_keys
for the remote user that is not prefixed with the command
variable:
% cat ~/.ssh/authorized_keys
ssh-rsa ...... user@host
# gitolite start
command="/home/gituser/.... user@host
# gitolite end
%
Just remove the first line and you're good to go.
I did precisely the same installation (Windows to Solaris), and it is worth it.
I did it:
- from a git bash session (not a DOS session),
- with
$HOME
correctly set (i.e. referencing a directory where my.ssh
public/private keys are stored, including the one for the user present on the Solaris server side)
Most of times, this seems to be because ssh doesn't pass the right public key to use to gitolite. Cf. "Does Not Appear to be a Git Repository". A comment in this article links to the gitolite author's website, especially to the 'Appendix #2', which explains how to know "which key is which".
We fixed this by reading the https://github.com/sitaramc/gitolite/blob/pu/doc/ssh-troubleshooting.mkd document. Specifically the section that mentions that we did not heed the instructions. "These problems happen to the person who has utterly failed to read/heed the message that shows up at the end of running the gl-easy-install" Remove all files. Re-run the install, and HEED the instructions :)
精彩评论