在Windows Server 2008上安装git服务器
首先安装Cygwin,安装openssh, git, bash-completion以及bash-compelion-devel
管理员权限运行bash,执行ssh-host-config
- *** Query: Should StrictModes be used? (yes/no) 这里选择yes
- *** Query: Should privilege separation be used? (yes/no) 这里选择yes, Cygwin会为我们建立一个特殊的windows账户用来执行sshd服务.
- ** Query: Do you want to install sshd as a service? ** Query: (Say “no” if it is already installed as a service) (yes/no) 选择yes, 会注册一个sshd的服务, 以执行server.
- *** Query: Enter the value of CYGWIN for the daemon: [] 这里写ntsec
- ** Info: This script plans to use ‘cyg_server’. ** Info: ‘cyg_server’ will only be used by registered services. *** Query: Do you want to use a different name? (yes/no) Cygwin要建立一个cyg_server账户以运行sshd服务, 这里可以选择为该账户另取名字或者使用default. 我们选择no.
- * Query: Create new privileged user account ‘xxx\cyg_server’ (Cygwin name: ‘cyg_server’)? (yes/no)
yes, 确定建立账户. 之后输入密码, 完成config.
**注意Windows Server下的密码策略可能会要求包含大写、小写字母、数字,除非在组策略gpedit.msc,计算机配置->Windows设置->安全设置->账户策略->密码策略,禁用“密码必须符合复杂性要求”
设定完毕后, 在/etc下面多出来一个sshd_config文件, 打开该文件, 将如下item的注释取消, RSAAuthentication yes PubkeyAuthentication yes
然后, 我们需要生成public和private key. 执行 ssh-keygen -t rsa 然后一路回车即可. 这时在我们的当前账户下就会多出来一个.ssh文件夹, 内部包含id_rsa和id_rsa.pub两个密钥文件.
cmd下net start sshd:
CYGWIN sshd 服务正在启动 .
CYGWIN sshd 服务已经启动成功。
建立一个专门的账号以登陆git服务器. 因此这里可以先建立一个windows下的账户, 例如名字就叫git, 密码为git
net user git git /add
命令成功完成。
将该git账户添加到管理员组当中.
net localgroup administrators git /add
命令成功完成。
ssh登录测试一下,注意开放防火墙的22端口
建立仓库:
git init --bare
切换到客户端git bash
ssh-keygen -t rsa
生成客户机器的public和private key, 之后我们需要将该机器的public key注册到服务器上, 以实现免密码登陆.
ssh-copy-id git@xxx.xxx.xxx.xxx
根据提示输入登陆密码, 就会将客户机的public key写入到服务器端git账户.ssh文件夹下的authorized_keys
git remote add origin git@webvr.chinacloudapp.cn: /cygdrive/d/xampp/htdocs/webvr.git