手把手教你安装windows下的git服务器(copssh+msysgit)并且聚合vs

英文原版地址http://www.codeproject.com/Articles/296398/Step-by-Step-Setup-Git-Server-on-Windows-with-CopS


简介

首先,我要说明的是Git不需要强调服务端和客户端,你的电脑可以既是客户端也是服务端。这意味着,你可以从其他电脑获取代码,这时候你是客户端;当别人需要获取你代码的时候,你就是服务端。这是Git分布式的特性,也是Git风靡全球的原因之一。


需要安装的软件

建立一个服务端需要的软件:

CopSSH(安装在服务端)

msysgit(服务端和客户端都需要安装)

PuTTY(服务端和客户端都需要安装)

聚合vs需要安装的软件:

GitExtensions(服务端和客户端都需要安装)


安装步骤

1.安装msysgit

a.当你安装msysgit的时候,请选择c:\Git作为安装目录,因为路径名存在空格会导致bash脚本命令出错


b.在"修改你的PATH环境变量"步骤中,我推荐你使用“仅仅用Git Bash"(译者注:如果选择其他很可能会导致命令重名,如system32和Git中都可能有find.exe)


c.其他设定默认即可。在安装过后,桌面会出现一个Git Bash的图标。你可以尝试一下git命令,如果效果与下图一致,恭喜你成功地安装了msysgit


d.增加C:\Git\bin和C:\Git\libexec\git-core到PATH环境变量。这个步骤非常重要


2.安装CopSSH

a.就像msysgit,我们不在Program Files中安装以避免空格问题。我们安装在c:\ICW


b.用CopSSH默认的帐号密码(译者注:这一步会在你的电脑新增一个管理员帐号,这些参数就是管理员的用户名和密码,而且以后基本上是不会用到的)


c.安装过后,在开始菜单打开COPSSH控制面板


d.用户选项卡-增加新用户


e.选择一个电脑中存在的用户(最好创建一个新的,务必设置密码),在这里,我们以jinweijie作为例子


f.允许全部访问方法


g.用户激活后,点击"密钥"按钮,注意要选中正确的用户


h.点击"添加",添加一个新的公钥


i.使用默认的密钥设定


j.输入口令(可以为空,不过需要点击按钮确定为空)和生成私钥的名字


k.私钥保存在c:\ICW\home\jinweijie\ryan-vm-01_2048.ppk.(注:jinweijie是之前选择的用户,私钥名称可以自己设定)



测试开始

现在我们已经安装了msysgit和copssh,我们需要测试是否成功安装。首先我们打开桌面下的Git Bash,输入

ssh jinweijie@ryan-vm-01
(jinweijie是你需要远程登陆的用户名,ryan-vm-01是远程连接的域名或者ip,读者可以通过127.0.0.1连接本机进行测试,或者在cmd命令行输入ipconfig进行查询)

输入"yes"继续

在你输入你的密码之后(windows用户的密码),然后尝试输入git,发现无法正常工作


这是因为CopSSH没有在服务端找到git.exe,所谓我们需要配置CopSSH的git path


3.给CopSSH配置上Git路径

a.用你偏爱的编辑器打开C:\ICW\etc\profile,添加:/cygdrive/c/git/bin:/cygdrive/c/git/libexec/git-core(注意开始的分号)到变量PATH,也就是说

export PATH="/bin:$syspath:$winpath:/cygdrive/c/git/bin:/cygdrive/c/
		git/libexec/git-core"
记得保存

b.点击两次CopSSH控制面板上的大按钮,重启CopSSH服务

c.我们再次尝试,运行Git Bash,输入ssh jinweijie@ryan-vm-01,输入密码然后运行git命令,这次就能够正常工作


4.在客户端配置私钥

a.把服务端的私钥(在步骤1-k生成的)拷贝到客户端中

b.客户端中,使用puttygen.exe加载私钥(如果你在步骤1-j设置了密码,这里会要求你输入)

c.点解"保存私钥"来保存一个plink.exe能够识别的私钥副本


5.创建一个仓库,聚合vs

a.在服务端客户端安装gitextensions

b.因为我们已经在1-a安装msysgit,所以这里只安装kDiff


c.安装在C:\GitExtensions\,其他设定默认

d.在服务端,打开Git Extensions,创建一个新仓库

e.在服务端,仓库目录必须为CopSSH用户的子目录,选择“中心仓库,没有工作区”(因为是服务端),然后初始化

f.在客户端,打开Git Extensions,点击克隆仓库

g.在客户端,仓库地址是ssh://jinweijie@ryan-vm-01/ICW/home/mydotnetproject.请注意,仓库必须在服务端的C:\中

h.在客户端,点击载入SSH密钥,选择步骤4-b储存的密钥

i.在客户端,如果之前设置密钥密码,这里需要再次输入,然后点击克隆

j.在客户端,编辑忽视的文件

k.在客户端,打开vs,在mydotnetproject(克隆下来的仓库)创建一个工程,你会发现文件都在git的源码控制下

l.点击vs选项卡中的Commit,然后点击Commit & push

m.成功推送

n.在服务端可以看到新推送的文件

That's all, happy GITTING!:)



评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值