文档出处 :http://blog.csdn.net/code_style/article/details/38764203

     http://blog.csdn.net/aaron_luchen/article/details/10498181

既然git在linux下面非常好用,为什么还要搭建git windows的服务器,因为不是所有的用户都需要在linux下面做开发,对吧,还有很多用户选择使用windows做开发。

看到很多网友尝试部分不成功,所以对内容部分做了修改。

日期:2015.10.14

科普一下:

1、TortoiseGit是什么?没错,是个乌龟,就像它的壳一样,仅仅是个壳,所以离不开真正的git(git for windows版本名字又叫msysgit,没壳的乌龟还能叫乌龟?国外的货就是喜欢把开源项目命名为一些稀奇古怪的东西)。

2、COPSSH是个什么东西? 就是一个windows平台的SSH服务器。

3、Git-1.8.3-preview20130601.exe是个什么东西?这就是真正的git。

4、使用TortoiseGit里面自带的PuTTY Key Gen生成的密钥对(公钥和私钥)为什么还要转换? COPSSH根本不用生成任何key的,只需要添加客户端提供上来的公钥即可。

参考这位仁兄的方法:http://blog.csdn.net/aaron_luchen/article/details/10498181 ,基本上能成功90%,但是最终还是会出现这样的错误,

比如:

Disconnected:No supported authentication methods available (server sent:publickey,keyboard-interactive)

比如使用Git Clone 怎么都Clone不下来代码等等。

比如:

fatal: protocol error: bad line length character: Micr

这样的协议错误,应该选择Linux shell and sftp,不应该选择windows shell。

开始进入正题:

所以需要注意下面的步骤。

1、添加好了用户以后,在COPSSH Pannel里面添加好为windows创建的用户,比如名字叫git,看好了Password authentication可是没有勾选的。

2、重点在这一步,修改配置文件,找到COPSSH安装的目录下面的etc目录,比如C:\SSH\etc,用记事本打开ssh_config和sshd_config这两个文件,两个文件都要修改。

修改如下内容:

找到PasswordAuthentication,如果前面有#号,删掉,如果后面是yes,改成no

PasswordAuthentication no

找到PubkeyAuthentication,如果前面有#号,删掉,如果后面是no,改成yes

PubkeyAuthentication yes

找到Port 22,删除掉前面的#号

Port 22

3、看下图,一目了然,别告诉我你不知道这个软件从哪里打开的,既然安装了乌龟TortoiseGit,当然是要去它的开始菜单里面找了。保存好私钥用于后面同步时Load用。

4、打开COPSSH安装目录下的home\git\.ssh目录,打开authorized_keys文件,将刚才上一步生成的公钥,粘贴进来,点保存,退出。例如下图:

5、重新启动COPSSH,方法两种,

一种是点绿色按钮,变红后,再次点即可变绿色,绿色代表已经正常运行,提示Service is running,如果配置的有问题,有时候会出现,你点一下那个红色按钮,程序没任何提示就直接关闭了,在这里不得不骂一下这个软件的开发人员,真是傻逼一个。就算是程序出错了,来个Messagebox提示一下用户会死吗?而是直接给退掉了,真奇葩。

另一种是进入windows服务里面,双击Openssh SSHD,点击启动服务,如果出现以下这种情况,解决方法是::

5.5、下图说明COPSSH运行正常:

6、同步代码,假如服务器上已经创建了版本库,如何使用乌龟软件TortoiseGit同步下来,假如同步地址是这样(局域网内):ssh://git@192.168.10.8:22/SSH/home/git/lib_database

同步成功:

后记:

有人说要改下面的地方,真不知是怎么想的,改了反而会导致Git Clone时的Load Putty Key变成灰色,导致在客户端上无法选择privatekey.ppk私钥文件。

经网友评论多次反映,出现"git did not exit cleanly (exit code 128)"这样的错误提示,一般是由于本机和服务器之间的权限问题,尝试一下开始->运行->\\192.168.10.8 回车,看能不能出现提示用户名和密码的窗口,不能,则说明之间有权限问题,先解决这个问题,后面应该就可以通了

搭建git for windows服务器的更多相关文章

  1. 搭建git for windows服务器(100%可以成功)

    既然Git在Linux下面非常好用,为什么还要搭建git windows的服务器,因为不是所有的用户都需要在linux下面做开发,对吧,还有很多用户选择使用windows做开发. 看到很多网友尝试部分 ...

  2. 搭建git for windows服务器(100%可以成功)【转】

    转自:http://blog.csdn.net/code_style/article/details/38764203 既然Git在linux下面非常好用,为什么还要搭建git windows的服务器 ...

  3. 本地windows下搭建git的本地服务器

    本地windows下搭建git的本地服务器 准备工作: 本地安装java环境,配置环境变量(略) 下载gitblit文件,百度一大堆 开始第一步: 减压gitblit压缩包到某个目录下,比如我在:H: ...

  4. Git学习总结(5)——搭建Git简易高效服务器

    1. mysysgit+gitblit安装流程 1.1资源  需先下载好的资源(公司用的1.6,1.7+请自行匹配对应的mysysgit+gitblit):  jdk1.6  Git-1.8.4-pr ...

  5. Linux搭建GIT 使用Eclipse创建并上传Git项目 EGit操作

    Linux搭建Git 1. gitblit服务器文档 http://gitblit.com/setup_go.html 2. 安装jdk 参考 http://blog.csdn.net/jerome_ ...

  6. Windows平台使用Gitblit搭建Git服务器图文教程

    Git服务现在独树一帜,相比与SVN有更多的灵活性,最流行的开源项目托管网站Github上面,如果托管开源项目,那么就是免费使用的,但是闭源的项目就会收取昂贵的费用,如果你不缺米,那么不在本文讨论的范 ...

  7. Windows下搭建Git 服务器: BONOBO GIT SERVER + TortoiseGit

    本文将介绍如何在Windows操作系统下搭建Git服务器和客户端.服务器端采用的是Bonobo Git Server,一款用ASP.NET MVC开发的Git源代码管理工具,界面简洁,基于Web方式配 ...

  8. Windows操作系统下搭建Git服务器和客户端。

    本文将介绍如何在Windows操作系统下搭建Git服务器和客户端.服务器端采用的是Bonobo Git Server,一款用ASP.NET MVC开发的Git源代码管理工具,界面简洁,基于Web方式配 ...

  9. Windows 使用 Gogs 搭建 Git 服务器(转)

    Windows 使用 Gogs 搭建 Git 服务器   随便说两句 之前有使用 Gitblit 在Windows搭建Git服务器,用的也挺好的,可能安装起来略麻烦一点.现在全用 Gogs 在wind ...

随机推荐

  1. 一些Asp.Net面试题答案

    工作时间长了总是用同样的一些东西  其他的有些生疏  闲来看看面试题练习一下:  题目出处嘛...aspnet-tests-for-juniors 转载请注明来源:http://www.cnblogs ...

  2. ASIHttpRequest 使用理解

    开源库:ASIHttpRequest ASIHttpRequest 下载网址:http://github.com/pokeb/asi-http-request 依赖的5个库文件:CFNetwork, ...

  3. MongoDB-C#驱动基本操作

    #region IMongoQuery //Query.EQ("", val);//字段值=val //Query.NE("", val);//字段值!=val ...

  4. ZeroMQ接口函数之 :zmq_connect - 由一个socket创建一个对外连接

    ZeroMQ 官方地址 :http://api.zeromq.org/4-0:zmq_connect zmq_connect(3)  ØMQ Manual - ØMQ/3.2.5 Name zmq_c ...

  5. 【Alpha】Daily Scrum Meeting第九次

    一.本次Daily Scrum Meeting主要内容 汇报情况. 上次提到的数据库字段问题,已经和合作队伍统一完毕. 在服务器上解析Json数据仍在解决中,现在直接使用手机发过去的数据进行解析. 二 ...

  6. oracle[insert 时报错: 单行子查询返回多行]

    -- 错误的写法 insert into t_b_partner_vehicle(id, partner_id, vehicle_id) (seq_t_b_partner_vehicle.nextva ...

  7. JavaScript 数组操作

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. 7.echo(),print(),print_r()的区别

    echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用) print()    只能打印出简单类型变量的值(如int,string) print_r() ...

  9. poj1007-DNA Sorting(排序)

    一,题意: 输入N个字符串,按照字符串的逆序数由最少到最大开始输出. 注意:如果逆序数相同,就原来顺序输出. 二,思路步骤: 1,输入,并用a[]存储每行字符串的逆序数; 2,冒泡排序a[]的同时换掉 ...

  10. HDU 3605 Escape(状压+最大流)

    Escape Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Sub ...