windows2008 R2 安装cygwin +gitolite

1. 下载安装cygwin, http://cygwin.com/setup.exe;

    下载时选择163的镜像,速度会快些;

    安装时勾选Net | openssh (不要选成openssl)

  • Devel | git
  • Devel | git-completion
  • Devel | git-gui
  • Devel | git-svn (如果需要同时提交到svn)
  • Devel | gitk
  • Editors | vim
2. 执行安装后桌面的 Cygwin64 Terminal 图标,建议用管理员权限启动;

       输入 cyglsa-config 回车,提示窗口选择 yes,然后重启系统;

3. 在windows 用户管理创建用户 git,密码设一下;

4. 启动cygwin;然后输入 ssh-host-config; 在提示中一路输入yes,

     在是否使用另外一个名字替代cyg_service的提示中输入no;

     最后提示Have Fun!表示配置完成;

   然后 cygrunsrv --start sshd 启动 sshd 服务;

   如果 sshd 启动不了,可以先 cygrunsrv --R sshd 然后重新 ssh-host-config 然后再 cygrunsrv --start sshd 试试看。

5. 配置windows防火墙允许22端口通过,方法是控制面板->系统和安全->系统防火墙->高级设置;

    在高级安全设置-防火墙的程序窗口中添加一条入站规则,端口是22即可;

6. 配置git用户,在其他客户机中使用putty登录服务器,用户名、密码就是第3步设置的git用户和密码;

    然后ssh-keygen 一路回车,然后将本地的ssh pub key上传到服务器,方法:ssh-copy-id git@,在命令行中输入用户名、密码完成; 

   然后logout,再用putty登录;

7. putty登录后在git用户的home目录下,编辑.bashrc

    在文件末尾插入 export PATH=$PATH:/$HOME/bin 然后保存退出

    在home目录创建bin目录;

   然后切换到 /tmp, 依次输入如下命令  

git clone git://github.com/sitaramc/gitolite
mkdir -p $HOME/bin
gitolite/install -to $HOME/bin
   然后回到home目录,首先查看 ~/.ssh/. authorized_keys文件,如果文件不空,删除所有内容。

   然后在home目录输入 gitolite setup -pk ~/.ssh/id_rsa.pub,然后根目录下会出现project.list和repositories两个目录。

   在home目录下输入git clone git@:gitolite-admin 就可以看到gitolite-admin的内容。

    然后编辑创建数据库即可。


主要问题:

1. 有时候碰到git登录ssh问题,我重新安装了cygwin解决依次;

2. gitolite setup -pk ~/.ssh/id_rsa.pub 提示 keydir/git.pub duplicates a non-gitolite key, sshd will ignore it,  是因为~/.ssh/.autorized_keys文件里面第一个key不是gitolite的,注释掉解决;

3. git clong gitolite-admin 总是clone一个空的,原因和第2个问题一样;


    修改gitolite默认的仓库路径:

   首先使用gitolite setup -pk git.pub 创建默认仓库。

   然后编辑 vim .gitolite.rc 在 %RC= ( 下面添加一行

    GL_REPO_BASE => "/cygdrive/e/xxx/",

   然后保存退出;

   然后再执行一遍 gitolite setup -pk git.pub 就会重新创建仓库到指定的路径了。

GL_REPO_BASE is a variable you can set in your ~/.gitolite.rc file.
By default, it references $HOME/repositories.

But this isn't related to where you have installed gitolite.

You can install it wherever you want:

git clone git://github.com/sitaramc/gitolite
gitolite/install -ln /path/to/wherever/you/want
gitolite setup -pk yourname.pub

The OP added in the comments below:

I added this line to the .rc :

 GL_REPO_BASE => "/home/gitolite",

(mind the trailing ',')


你可能感兴趣的:(Android开发,Server开发)