首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > windows >

Windows上施用Cygwin和Gitolite搭建Git服务器

2012-07-15 
Windows上使用Cygwin和Gitolite搭建Git服务器安装Cygwin下载 setup.exe打开setup.exe, 选择Install from I

Windows上使用Cygwin和Gitolite搭建Git服务器

安装Cygwin

    下载 setup.exe打开setup.exe, 选择Install from Internet选择安装Cygwin到C:\cygwin选择存储下载文件的目录为C:\选择下载站点的镜像选择安装以下软件包:Net | openssh (不要选成openssl)Devel | gitDevel | git-completionDevel | git-guiDevel | git-svn (如果需要同时提交到svn)Devel | gitkEditors | vim

集成Cygwin和Windows Security

    打开C:\cygwin\Cygwin.bat$ bin/cyglsa-config选择yes*** Query: Enter the value of CYGWIN for the daemon: []输入tty*** Info: The sshd service has been installed under the LocalSystem
    *** Info: account (also known as SYSTEM). To start the service now, call
    *** Info: `net start sshd' or `cygrunsrv -S sshd'. Otherwise, it
    *** Info: will start automatically after the next reboot.

    *** Info: Host configuration finished. Have fun!配置结束,确认端口22可用。启动服务:sc start sshd

允许SSH客户端访问

    创建一个名为git的用户,设置密码,并确保密码不会过期。在Cygwin Bash中,执行命令: mkpasswd -l -u git >> /etc/passwd

验证下SSH登录

    打开Cygwin Bash$ ssh git@10.0.2.15Administrator@china-fe1bdcde5 ~
    $ ssh git@10.0.2.15
    The authenticity of host '10.0.2.15 (10.0.2.15)' can't be established.
    ECDSA key fingerprint is 5d:a6:81:98:43:fa:5a:f6:df:ba:18:b9:a0:76:87:f8.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added '10.0.2.15' (ECDSA) to the list of known hosts.
    git@10.0.2.15's password:
    Could not chdir to home directory /home/git: No such file or directory
    Copying skeleton files.
    These files are for the users to personalise their cygwin experience.

    They will never be overwritten nor automatically updated.

    `./.bashrc' -> `/home/git//.bashrc'
    `./.bash_profile' -> `/home/git//.bash_profile'
    `./.inputrc' -> `/home/git//.inputrc'
    `./.profile' -> `/home/git//.profile'

    git@china-fe1bdcde5 ~
    $以git用户登录成功

创建SSH密钥, 并使能够通过SSH identity以git用户登录SSH服务器

?

    打开Cygwin Bash$ ssh-keygen -t rsa (所有输入都为空,即使用默认配置,密码为空)$ ssh-keygen -t rsa
    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/Administrator/.ssh/id_rsa):
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    Your identification has been saved in /home/Administrator/.ssh/id_rsa.
    Your public key has been saved in /home/Administrator/.ssh/id_rsa.pub.
    The key fingerprint is:
    6a:02:9f:42:99:7c:fe:52:e7:a9:fe:1b:15:1e:70:31 Administrator@china-fe1bdcde5
    The key's randomart image is:
    +--[ RSA 2048]----+
    | . E. |
    | o . |
    | o |
    | . o . o |
    | * . S o |
    | . = ..... |
    | . =.oo.. |
    | ..+ o. |
    | o+oo. |
    +-----------------+$ ssh-copy-id git@10.0.2.15 (输入git用户密码)$ ssh-copy-id git@10.0.2.15
    git@10.0.2.15's password:
    Now try logging into the machine, with "ssh 'git@10.0.2.15'", and check in:

    ~/.ssh/authorized_keys

    to make sure we haven't added extra keys that you weren't expecting.验证下,以git用户登录:ssh git@10.0.2.15$ ssh git@10.0.2.15
    Last login: Sat Jun 11 23:06:14 2011 from china-fe1bdcde5

    git@china-fe1bdcde5 ~
    $ 不需要输入密码,即登录成功

安装Gitolite

    打开Cygwin Bash$ cd /tmp$?git clone git://github.com/sitaramc/gitolite.git$ cd gitolite/src/$ ./gl-easy-install git 10.0.2.15 alec (可以单独执行gl-easy-install查看各个参数的意义)根据安装向导一步步完成配置(其中需要配置alec的密码,生成SSH密钥)当走到需要编辑配置文件(用vim编辑)的时候,在开头插入:$ENV{PATH} = "/usr/local/bin:/bin:/usr/bin";,保存并退出(:wq)?如:?# configuration variables for gitolite
    $ENV{PATH} = "/usr/local/bin:/bin:/usr/bin";?
    # PLEASE READ THE DOCUMENTATION BEFORE EDITING OR ASKING QUESTIONS
    # ( http://github.com/sitaramc/gitolite/blob/pu/doc/gitolite.rc.mkd )
    # ( or http://sitaramc.github.com/gitolite/doc/gitolite.rc.html )

    # this file is in perl syntax. However, you do NOT need to know perl to edit
    # it; it should be fairly self-explanatory and easy to maintain继续完成安装。当完成安装之后,可以在当前用户的home目录下面看到gitolite-admin目录。$ cd ~/gitolite-admin$ git statusAdministrator@china-fe1bdcde5 ~/gitolite-admin
    $ git status
    # On branch master
    nothing to commit (working directory clean)

到此整个git server已经安装结束,可以参考Gitolite文档来配置:添加user和repository

?

热点排行