- 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的通信,需要配置下防火墙)
- 两台机器上都安装git,用msysgit,安装之后需要将git的执行路径添加到copssh的PATH路径中(etc/profile):
另外msysgit缺少几个命令,需要自己添加git-receive-pack,git-upload-archive,git-upload-pack,例如:syspath=`/bin/cygpath -S`
winpath=`/bin/cygpath -W`
gitpath=`/bin/cygpath /cygdrive/d/Git/cmd`
export PATH=”/bin:$syspath:$winpath:$gitpath:”
为了方便把远程登录的起始目录项作为存放代码的目录#!/bin/sh
git receive-pack $*
- 准备工作已经就绪,在git server上创建一个代码仓库
- 客户端可以如下添加代码和提交
mkdir project.git
git –bare init
git remote add origin < user name >@< ip >:project.git
git push origin master
这样就搭建起了一个自己的git server。
No comments :
Post a Comment