Thursday, 6 October 2011

win7下搭建git server小记

  1. git支持ssh协议,所以首先作为git server的机器要配置sshd.这里就没有用cygwin了,用的是copssh.安装完后,在control panel中添加一个用户作为Activated user。去掉“Password Authentication”选项,这里用公钥认证就好了。现在在另一台机器上,安装有ssh客户端,(哈哈,这台机器上用了cygwin,也可以用putty),用ssh-keygen生成一对密钥对,把公钥文件命名为“authorized_keys”放在copssh安装目录下home/< user name >/.ssh/下,这样在客户端就可以用“ssh < user name >@< ip >“远程登录测试(windows防火墙会阻拦sshd的通信,需要配置下防火墙)
  2. 两台机器上都安装git,用msysgit,安装之后需要将git的执行路径添加到copssh的PATH路径中(etc/profile):
    syspath=`/bin/cygpath -S`
    winpath=`/bin/cygpath -W`
    gitpath=`/bin/cygpath /cygdrive/d/Git/cmd`
    export PATH=”/bin:$syspath:$winpath:$gitpath:”
    另外msysgit缺少几个命令,需要自己添加git-receive-pack,git-upload-archive,git-upload-pack,例如:
    #!/bin/sh
    git receive-pack $*
    为了方便把远程登录的起始目录项作为存放代码的目录
  3. 准备工作已经就绪,在git server上创建一个代码仓库

  4. mkdir project.git
    git –bare init
  5. 客户端可以如下添加代码和提交

  6. git remote add origin < user name >@< ip >:project.git
    git push origin master
其他git用法请参考git 手册
这样就搭建起了一个自己的git server。

No comments :

Post a Comment