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










本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/sky-heaven/p/5533135.html,如需转载请自行联系原作者

相关文章
|
2月前
|
SQL Apache Windows
Windows服务器80端口被占用的全面解决方案
在服务管理器中启动apache2服务,即可正常使用80端口。若系统中还安装了其他微软产品如sql等,也可尝试停止其服务进行测试,但请注意,SQL通常不会使用80端口,因此一般不会受到影响。以上就是关于80端口被system占用的详细解决方法,希望对你有所帮助。
|
2月前
|
Windows
Windows下版本控制器(SVN)-验证是否安装成功+配置版本库+启动服务器端程序
Windows下版本控制器(SVN)-验证是否安装成功+配置版本库+启动服务器端程序
106 2
|
2月前
|
监控 Linux 网络安全
FinalShell SSH工具下载,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux
FinalShell是一款国人开发的多平台SSH客户端工具,支持Windows、Mac OS X和Linux系统。它提供一体化服务器管理功能,支持shell和sftp同屏显示,命令自动提示,操作便捷。软件还具备加速功能,提升访问服务器速度,适合普通用户和专业人士使用。
166 0
|
3月前
|
Windows
Windows下版本控制器(SVN)-启动服务器端程序
Windows下版本控制器(SVN)-启动服务器端程序
111 4
|
4月前
|
存储 安全 Ubuntu
从Linux到Windows:阿里云服务器系统镜像适配场景与选择参考
阿里云为用户提供了丰富多样的服务器操作系统选择,以满足不同场景下的应用需求。目前,云服务器的操作系统镜像主要分为公共镜像、自定义镜像、共享镜像、镜像市场和社区镜像五大类。以下是对这些镜像类型的详细介绍及选择云服务器系统时需要考虑的因素,以供参考。
|
Linux Shell 开发工具
Git 安装和配置教程:Windows - Mac - Linux 三平台详细图文教程,带你一次性搞 Git 环境
Git是一款免费、开源的分布式版本控制系统,广泛应用于软件开发领域。随着开源和云计算的发展,Git已经成为了开发者必备的工具之一。本文将为大家介绍Git在Windows、Mac和Linux三个平台上的安装和配置方法,带你一次性搞定Git环境
4176 0
|
网络安全 开发工具 git
Git - 安装 & 配置(Windows)
Git - 安装 & 配置(Windows)
179 0
Git - 安装 & 配置(Windows)
|
3月前
|
安全 开发工具 git
git的常用操作命令
git的常用操作命令
288 57
|
4月前
|
存储 项目管理 开发工具
Git常用命令及操作技巧
以上是Git的常用命令及操作技巧,尽管看起来有些繁琐,但实际上只要花费一些时间进行实践,您将很快熟练掌握。随着使用熟练度的提高,您会发现Git对项目管理和协同工作的强大帮助。
125 20
|
6月前
|
人工智能 前端开发 Java
用git rebase命令合并开发阶段中多条commit提交记录
通过 `git rebase`,可以合并多个提交记录,使开发历史更简洁清晰。操作分为 6 步:查看提交历史 (`git log --oneline`)、设置需合并的提交数 (`git rebase -i HEAD~N`)、修改动作标识为 `s`(squash)、保存退出编辑、调整提交信息、强制推送至远程仓库 (`git push -f`)。此方法适合清理本地无关提交,但若有团队协作或冲突风险,需谨慎使用以避免问题。
785 60