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

转自:http://blog.csdn.net/code_style/article/details/38764203

既然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 回车,看能不能出现提示用户名和密码的窗口,不能,则说明之间有权限问题,先解决这个问题,后面应该就可以通了。

【作者】张昺华
【出处】http://www.cnblogs.com/sky-heaven/
【博客园】 http://www.cnblogs.com/sky-heaven/
【新浪博客】 http://blog.sina.com.cn/u/2049150530
【知乎】 http://www.zhihu.com/people/zhang-bing-hua
【我的作品---旋转倒立摆】 http://v.youku.com/v_show/id_XODM5NDAzNjQw.html?spm=a2hzp.8253869.0.0&from=y1.7-2
【我的作品---自平衡自动循迹车】 http://v.youku.com/v_show/id_XODM5MzYyNTIw.html?spm=a2hzp.8253869.0.0&from=y1.7-2
【新浪微博】 张昺华--sky
【twitter】 @sky2030_
【facebook】 张昺华 zhangbinghua
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/261212.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

eclipser认java源码_java相关:Eclipse查看开发包jar里源代码的方法

java相关:Eclipse查看开发包jar里源代码的方法发布于 2020-5-21|复制链接摘记: Eclipse查看开发包jar里源代码的方法前言:最近我打算学习一下谷歌的类库Guava,下载了Guava-r09.jar包及其源码,为了可以方面的看其源码,我…

php归档函数(按时间)实现

今日开发本站需要用到按时间归档文章的功能,即按文档发布时间将文章文类,以实现检索和统计功能,于是自己写了一个, 现分享给大家,相信大家工作和学习中有可能会用到,实现原理很简单,即取出文章发…

【转】高性能WEB开发系列之重绘与回流

原文转载:http://www.cnblogs.com/wangzhichao/archive/2011/05/16/2047633.html页面呈现流程 在讨论页面重绘、回流之前。需要对页面的呈现流程有些了解,页面是怎么把html结合css等显示到浏览器上的,下面的流程图显示了浏览器对页面的呈现的…

java字符串颠倒位置_java字符串第一个字符与最后一个字符颠倒位置测试

最近做了一个需求,就是 通过OA 连接到我们系统,然后request里 带有base64加密后的字符串,并且第一个与最后一个位置颠倒了,所以需要先恢复正常的加密串,然后在解密。所以首先工作是 先测试还原加密串,就是第…

C#自定义特性实例

元数据,就是C#中封装的一些类,无法修改.类成员的特性被称为元数据中的注释. 1、什么是特性 (1)属性与特性的区别 属性(Property):属性是面向对象思想里所说的封装在类里面的数据字段,Get,Set方法。 特性(Attribute): …

UVA 10054 the necklace 欧拉回路

有n个珠子,每颗珠子有左右两边两种颜色,颜色有1~50种,问你能不能把这些珠子按照相接的地方颜色相同串成一个环。 可以认为有50个点,用n条边它们相连,问你能不能找出包含所有边的欧拉回路 首先判断是否在一个联通分量中…

解决tsvncache.exe引起电脑慢的问题

如果你觉得SVN的cache程序使得你的机器反应很慢的话,那可以参考这个方案.不过可能要改变你以前使用习惯.这个方案有两部分,第一部分是关闭SVN的cache监视;第二部分是显示文件差异时,使用SVN的“check for modifications”显示差异。 1.关闭SVN的cache监视。即关闭tsvncache.exe…

重构-改善既有代码的设计(1)

1,建立可靠地测试环境 2,寻找要重构的代码(函数或者类) 一般为比较长的函数,或者逻辑混乱的类 3,重构后的函数要修改局部变量,增加程序的可读行 4,函数应该放在它所使用的数据的所属对象内&…

[数据结构与算法] 单链表的简单demo

Vc6之下编译通过。。 1 /*******************************************************2 * : Project: 单链表数据结构演示3 * : File: link_list.h4 * : Function: 提供单链表操作的数据结构定义及方法声明5 * : History: 2013-10-01 22:37:056 * : Auth…

c++ 17介绍

作者:hearts zh链接:https://www.zhihu.com/question/32222337/answer/55238928来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。其实现在的proposal很多很多,不出意外也会有相当一部分…

HTML5本地存储不完全指南

历史 在HTML5本地存储之前,如果我们想在客户端保存持久化数据,有这么几个选择: HTTP cookie。HTTP cookie的缺点很明显,最多只能存储4KB的数据,每个HTTP请求都会被传送回服务器,明文传输(除非你…

php面向对象编程详解,PHP面向对象编程

3.3 类的定义和实例化date_default_timezone_set("PRC");/*** 1. 类的定义以class关键字开始,后面跟着这个类的名称。类的名称命名通常每个单词的第一个字母大写。* 2. 定义类的属性* 3. 定义类的方法* 4. 实例化类的对象* 5. 使用对象的属性和方法*/c…

[Postgres]Postgres复制表

在需要把含有分表的总表备份的时候想到的笨办法,如果有什么更先进的办法万望告知。 比如TableOld是由TableOld1,TableOld2,TableOld3组合而成,现在需要对TableOld进行备份。 复制表带数据 select * into TableNew from TableOld; 复制表结构 select * in…

“高考”机器人横空出世 2017年居然要考“大学”

文/辛东方,80后作家、专栏作者、专注互联网科技领域人工智能的发展,科学技术的全力配合,已经把人类的智慧实实在在的体现到了智能化设备上。按照目前的发展速度,人工智能要想真正突破技术难关,达到进一步的智能化&…

谁说菜鸟不会数据分析--数据分析那些事儿

一、数据分析是“神马” 1、 何谓数据分析 简单来说,数据分析就是对数据进行分析,较为专业的说法,数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总、理解并消化,以求最大化地开发数据的功…

优集品 php,从细节处着眼 优集品打造成人世界的儿童节

在各大电商企业仍旧在史上最大规模的价格战中拼的不可开交之时,重视用户体验度,以商品传递生活理念而知名的全球优选设计百货--LivePort优集品(http://www.liveport.cn/),已然细心的为眼下即将来临的六一儿童节策划了一餐盛宴,为追…

百万级并发 Node.js也能行

http://www.csdn.net/article/2012-08-21/2808861 转载于:https://www.cnblogs.com/myblog1314/p/3365157.html

云服务器与传统服务器的优势差异

云服务器对比传统服务器的优势 一.云服务器是云计算服务的重要组成部分,是面向各类互联网用户提供综合业务能力的 服务平台。平台整合了传统意义上的互联网应用三大核心要素:计算、存储、网络,面向用户提供公用化的互联网基础设施…

php 完美分页,php完美分页类程序

class Page{private $total; //数据总条数private $listRows; //每页显示条数private $limit; //限制条数private $pageNum; //总页数private $page; //当前页private $configarray(head>"条记录", "prev">"上一页", "next">…

用PHP获取土豆网视频FLV地址

主要代码:<?php //根据视频地址取内容 $url "http://www.tudou.com/programs/view/B6q-LhN9e-0/"; $txt file_get_contents($url); //取视频ID preg_match("/var iid (\d)/", $txt, $match_id); preg_match("/<title>(.*?)…