在windows 环境下对于 git 服务器的安装和使用
前言:
虽然说在团队开发的时候会有版本控制服务器,但是个人自己开发的时候,有的时候也需要有个版本控制下,比如,你改好了一个小的功能,然后在这个功能上继续扩展,结果扩展不成功,于是回到这个小功能上去。当然还是有版本控制更好啦。
我决定采用git 来做个人的版本控制。
网上查了一堆的资料,可以还是有些实际操作过程中的奇葩问题,故决定重新整理一下
准备工作:
准备一下需要安装的软件:
1、Git-2.9.2-64-bit.exe 下载:https://git-scm.com/download/
2、Copssh_4.1.0_Installer.exe
3、TortoiseGit-1.8.5.0-64bit.msi
操作系统:Win7
科普一下:
Copssh 是一个 windows 平台的 ssh 服务器
Git服务器的 搭建过程,可以分为 服务器端和客户端
服务器端的安装及部署
1、安装Git
此处选择默认安装
此处选择第三个,不去转换成unix的代码风格
完成安装
配置一下环境变量:将git安装目录下的bin 目录 放入 path 中
2、安装SSH及配置用户
安装在根目录下,避免路径中有空格,造成不必要的麻烦
此处是设置SSH的帐号密码 ,建议换成用户名和密码 自己能记住的(比如 GitAdmin)
安装好后提示通过“COPSSH Control Panel”添加用户
完成安装
安装完成后,我们需要做个关联,主要是关联 git 和 ssh,因为git 要用ssh 协议来连接服务器
操作方法,将git 中的相关文件 copy 到 ssh 的bin 目录中:
1、将Git安装目录D:\Program Files\Git\mingw64\libexec\git-core文件夹下的git-upload-pack.exe、git.exe、git-receive-pack.exe和git-upload-archive.exe这4个文件复制到SSH的安装路径D:\ICW\bin下。
2、将Git安装目录D:\Program Files\Git\mingw64\bin\libiconv-2.dll复制到D:\ICW\bin下。
E:\Program Files\Git\mingw64\bin\ libiconv-2.dll
E:\Program Files\Git\mingw64\libexec\git-core\git.exe
E:\Program Files\Git\mingw64\libexec\git-core\git-receive-pack.exe
E:\Program Files\Git\mingw64\libexec\git-core\git-upload-archive.exe
E:\Program Files\Git\mingw64\libexec\git-core\git-upload-pack.exe
// 将这些文件 复制 到 ssh 的bin 目录下,如D:\ICW\bin
接下来,我们需要在服务器上创建个账号,普通账号即可,我这里创建了个普通账号叫git。
有了这个账号,我们接下来利用ssh control panel 来创建个对应的ssh账号,对应步骤截图如下:

开始配置SSH用户
选中“Users”选项卡,点击Add按钮添加用户
选择用户名,此处可以选择刚刚安装SSH时设置的“SvcCOPSSH”用户,也可以自己新建一个用户来操作,本教程新建了一个GitAdmin的用户作为管理账户。 (事实证明,我不能新建,所以选择刚才设置的账号吧)
这里注意下,第一项 Allow password authentication没有勾选

点击Apply,ssh中账号创建成功。

至此,服务器的配置已告一段落了,我们可以在服务器上创建个仓库,以备后续的连接测试。由于我们之前创建了一个叫GitAdmin的账号,在ssh的安装目录下的home目录里面,多了一个GitAdmin目录。
3、连接Git版本库
进入SSH安装目录下的bin文件夹,调用ssh.exe文件,输入以下代码:
“ssh GitAdmin@你的服务器名称或者IP地址”
键入yes
输入密码
看到这个界面,代表连接成功。此时你已经通过SSH协议连接上了Git。
4、建库操作
登录完成后,此时的实际路径是:E:\ICW\home\GitAdmin
我们可以在服务器上创建个仓库,以备后续的连接测试。
进入该目录,右键选择Git Bash,在命令行下,依次运行以下命令

mkdir myproject //创建我的项目目录,命名为myproject
cd myproject //进入该目录
touch helloworld.txt //在目录下创建个文件,以备后续测试
git init //初始化该仓库
git add . //当前目录下所有文件都加入到暂存区
git config --global user.email “xxx@xxx.com” //创建全局git账号
git config –global user.name “Jason Huang” //创建全局git账号
git commit –m “init myproject repo”//将暂存区的文件全部提交到仓库,并添加注释
客户端安装与配置
1、安装Git
安装步骤与服务器端相同。客户端也需要安装git
安装完成后,需要创建个密钥,主要用于与服务端连接的认证。
密钥生成步骤:打开 Git Bash, 输入命令 ssh-keygen,对于后续命令行提示输入,一路默认回车即可。根据提示,默认生成的密钥对在当前用户目录下的.ssh目录下。
为了使服务器认识我们的公钥,需要将密钥对中的公钥 上传至服务器。
在创建的账号 对应的目录下如 E:\ICW\home\ppnie\.ssh ,新建文件authorized_keys,注意这里没有文件后缀名,将刚刚 公钥文件id_rsa.pub 中的内容粘贴进去,保存好。
最后后,要确保服务器端口22是打开的,如果没有打开,去防火墙配置下,至少保证入站端口22是打开的,因为这里ssh连接的默认端口是22。
至此,客户端相关配置基本完成。我们可以开始clone了,创建一个目录,然后Git Bash,运行以下命令
//这里我的服务器IP地址为192.168.1.168
git clone ssh://git@192.168.1.168:22/ssh/home/git/myproject
2、安装TortoiseGit
安装完毕
此时在你的电脑鼠标右键就能看到Git已经集成到了系统快捷操作中。
参考资料
Windows+Git+TortoiseGit+COPSSH 安装图文教程
点评:他写的极度详细啦,如果不出意外的话,应该一定会成功的!
http://www.tuicool.com/articles/IVvqi2
点评:给了点理由
在windows 环境下对于 git 服务器的安装和使用的更多相关文章
- Windows操作系统下搭建Git服务器和客户端。
本文将介绍如何在Windows操作系统下搭建Git服务器和客户端.服务器端采用的是Bonobo Git Server,一款用ASP.NET MVC开发的Git源代码管理工具,界面简洁,基于Web方式配 ...
- Windows平台下搭建Git服务器的图文教程
Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在window ...
- Windows平台下搭建Git服务器的图文教程(转发)
Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在window ...
- Android 源码获取-----在Windows环境下通过Git得到Android源代码
在学习Android的过程中,深入其源代码研究对我们来说是非常重要的,这里将介绍如何通过在Windows环境下使用Git来得到我们的Android源代码. 1.首先确保你电脑上安装了Git,这个通过 ...
- Windows环境下部署Tomcat服务器图文教程
Tomcat是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选. 本文将详细介绍在Windows环境下 ...
- freeSSHD在windows环境下搭建SFTP服务器
freeSSHD在windows环境下搭建SFTP服务器 0 建议现在windows环境下安装cygwin,否则在windows环境下cmd模式使用不了sftp去连接,可以利用win scp去测试连接 ...
- Windows环境下搭建MosQuitto服务器
Windows环境下搭建MosQuitto服务器 2018年04月16日 22:00:01 wistronpj 阅读数:1185 摘自:https://blog.csdn.net/pjlxm/art ...
- Windows环境下通过Git来管理自己的Android代码
前面已经介绍了在Windows下使用git工具来下载Android的源代码,Windows环境下通过Git得到Android源代码,这里记录我使用git工具来管理我自己的代码,git是一种分布式的项目 ...
- (转发)Android 源码获取-----在Windows环境下通过Git得到Android源代码
在学习Android的过程中,深入其源代码研究对我们来说是非常重要的,这里将介绍如何通过在Windows环境下使用Git来得到我们的Android源代码. 1.首先确保你电脑上安装了Git,这个通过 ...
随机推荐
- 边工作边刷题:70天一遍leetcode: day 85-3
Zigzag Iterator 要点: 实际不是zigzag而是纵向访问 这题可以扩展到k个list,也可以扩展到只给iterator而不给list.结构上没什么区别,iterator的hasNext ...
- Android数据存储(二)----PreferenceFragment详解
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- 第12章 纤程(Fiber)
12.1 纤程对象的介绍 (1)纤程与线程的比较 比较 线程(Thread) 纤程(Fiber) 实现方式 是个内核对象 在用户模式中实现的一种轻量级的线程,是比线程更小的调度单位. 调度方式 由Mi ...
- AC日记——石子归并 codevs 1048
1048 石子归并 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 有n堆石子排成一列,每堆石子 ...
- ASP代码审计一枚
<% On Error Resume Next dim name, pass, sql, action set conn = server.CreateObject("ADODB.Co ...
- iOS宏定义
1.__OBJC__宏定义作用 在.pch 文件中一般都会自动加上这句宏定义,表示宏内引用的文件确保只被使用Objective-C语言的文件所引用,保证引用关系的清晰.因为在一个OC工程中,可能包含. ...
- javascript中的浅复制和深复制
//浅复制:实现基本类型的复制没有问题,但是复制的是引用类型的话,则修改child将会修改parent function extend(parent,child){ var child = child ...
- PHP基础20:创建文件
<?php /* 1.PHP 创建文件 - fopen() fopen() 函数也用于创建文件.也许有点混乱,但是在 PHP 中,创建文件所用的函数与打开文件的相同 如果您用 fopen() 打 ...
- 构架高性能WEB网站的几点知识
前言: 对于构架高性能的web网站大家都很感兴趣,本文从几点粗谈高性能web网站需要考虑的问题. HTML静态化 什么是html静态化? 说得简单点,就是把所有不是.htm或者.html的页面改为.h ...
- EF code First数据迁移学习笔记(转)
转自:http://www.cnblogs.com/icyJ/p/migration.html 准备工作 1.新建一个控制台项目, 在"程序包管理控制台"执行 Install-pa ...