以下是基于window server 2012搭建的,学习搭建过程需要很多问题,找了许多文章做了一下总结。

1、所需的软件

  • Git for Windows: MsysGit(Git-1.7.4-preview20110204.exe)
  • OpenSSH for Windows: CopSSH(Copssh_4.0.4_Installer.exe)

2、安装git

  一般都是默认安装就行

3、安装copssh

  也是默认安装

  安装完成后主要有:Copssh Control Panel、Start a Unix BASH Shell

4、新建用户

  》控制面板》用户帐户》用户帐户》管理帐户》新建用户(如git)

   取消用户下次登录时须更改密码,设置密码永不过期。

5、打开 Copssh Control Panel

  5.1 绿色表示成功启动,如果是红色,请重新安装。

  *如果之前安装过又卸载,可以尝试如下:

    删除系统用户SvcCOPSSH(windows用户):
      (1)开始-计算机,右键,点击管理,进入计算机管理界面
      (2)展开[本地用户和组],展开用户列表,选中系统用户SvcCOPSSH,右键删除即可

  

  

 

  5.2 启动成功,之后接着如下:

    》选择Users,点击Add

      

    》 点击Forward,选择用户,然后点击Forward,

      

    》 默认就行,然后点击Apply完成

      

    》然后回到User那个界面,点击Keys

      

  

   》 查看对于的用户是否生成密钥,有则跳过,没有则生成

    

   》生成密钥,点击上面的Add,然后一直Forward,见到如下页面

    

  》 然后点击Forward,Apply即可完成

6、验证ssh用户

  6.1 打开 Start a Unix BASH Shell

    》 输入 cd /home/用户名/.ssh,如下即可

    

  6.2 测试远程ssh连接(需要开启22端口)

    》 在另外一台计算机(或者本机)打开一个cmd,然后输入(git为用户名):ssh git@192.168.2.2

    》然后提示输入密码,即表示成功连接

    * 如果出现如下错错误:

      SSH登陆错误"WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! "

      

      

    原因:ssh安装卸载多次,一般是因为在本计算机连接过远程的计算机,本地保存之前的连接信息,现在只需要删除之前的连接信息即可:

    解决方法:(在cmd,或者git bash输入)

      》 rm  ~/.ssh/known_hosts

7、接下来需要使用git的命令(上面连接成功,仅仅可以使用Linux命令,git命令还是无法使用)

  测试方法:连接成功之后,输入:git。可以看到git命令相关信息,表示可以使用git。

  一般这里有两种选择,第一步(7.1)不行,请继续第二步(7.2)。

  7.1  把git的一些必要文件复制到ssh的安装目录下

    》把将$ Git\libexec\git-core目录下的git.exe , git-receive-pack.exe , git-upload-archive.exe , git-upload-pack.exe复制到$ICW\bin目录下

    》将$Git\bin目录下的libiconv-2.dll复制到$ICW\bin目录下

    》将$Git下的share目录整个拷贝到$ICW下。

    其中,$Git是指msysgit的安装目录  ,同理$ICW指COPSSH的安装目录。

  7.2 如果经过7.1还是不成功,则如下:

    》 修改 $ ICW/home/git/.bashrc 文件,增加如下行(注意:红色部分为git安装目录):

      gitpath='/cygdrive/c/Program Files/Git/mingw64/bin'

      gitcorepath='cygdrive/c/Program Files/Git/mingw64/libexec/git-core'
      PATH=${gitpath}:${gitcorepath}:${PATH}

    》修改 $ ICW/etc/profile,在文件末尾增加如下行(注意:红色为git安装目录)

      gitpath='/c/Program Files/Git/mingw64/bin'

      gitcorepath='cygdrive/c/Program Files/Git/mingw64/libexec/git-core'
      export PATH="/bin:$syspath:$gitpath:$gitcorepath:$winpath"

8、测试git服务器

  8.1 连接ssh服务器

    》打开“Git Bash”,使用命令

    》ssh ccf@192.168.1.100

    连接到ssh服务器。这个命令上面有说明。

    然后依次使用下列命令

  8.2 在服务器新建git仓库

    》mkdir test.git

    》cd test.git

    》git init --bare

    新建一个名为test.git的文件,并在其中建立一个纯git仓库。

    》然后使用命令exit退出ssh服务器

  8.3 在本地计算机,克隆远程仓库,提交测试

    》cd d:

    》mkdir test

    》cd test

    》git clone git@192.168.1.1:test.git .

    在d盘下新建一个test文件夹并从服务器clone一个git仓库。

    接着依次输入下列命令

    》touch a b c

    》git status

    》git add .

    》git commit -m "测试"

    》git push origin master

9、 修改用户登录后的目录

  9.1 修改 $ ICW/home/用户名/.bashrc ,在末尾增加如下:

    》 cd C:/MyPorgramPath

  9.2 修改 $ ICW /etc/password文件,修改对于用户的路径(红色部分为需要修改的路径)

    git:XXXXXX:/cygdrive/c/Project:/bin/bash

1

在window系统下搭建基于ssh的git服务器的更多相关文章

  1. Windows下搭建基于SSH的Git服务器

    Git客户端安装 客户端要同时安装在远程服务器和自己的电脑上,下载地址:http://msysgit.github.io/ 选择安装组件 :也可以默认选择; 图标组件(Addition icons) ...

  2. Windows 7下 搭建 基于 ssh 的sftp 服务器

    Windows  xp 下 搭建 基于  ssh 的sftp 服务器,服务器端可以用 freesshd,F-secure server等,filezilla server不可用,之前傻乎乎的用file ...

  3. window系统下搭建本地的NuGet Server

    1. NuGet.Config文件所在的目录: C:\Users\xxx\AppData\Roaming\NuGet 2.将nupkg为结尾的文件放在 项目的Packages目录下.(注意是和web. ...

  4. Window系统下搭建GIT本地服务器

    转载:https://blog.csdn.net/qwer971211/article/details/71156055

  5. windows下搭建基于nginx的rtmp服务器

    https://blog.csdn.net/fireroll/article/details/51985688 Windows机器配置:Windows7旗舰版 64位Intel(R) Core(TM) ...

  6. [IDS]CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统,超详细!!!

    最详细的CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统免责声明一.如果因为使用本文档照成损失(系统崩溃.数据丢失等),作者不承担任何责任.二.本文档只是个人使用本文 ...

  7. 记录Window系统下myeclipes连接linux下mysql所出现的一个bug

    记录myeclipes远程连接mysql所出现的一个bug 今天在玩框架hibernate时,出现一个非常费解的bug,话不多说,先看bug Access denied for user 'root' ...

  8. 在window系统下配置login.sql

    在window系统下配置login.sql 他的位置是登录用户的文件夹,我的win7系统位置是: C:\Users\Administrator 我的login.sql下载地址: http://file ...

  9. Ubuntu系统下搭建Python开发环境

    之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-reposito ...

随机推荐

  1. 9.创建一个三角形类,成员变量三边,方法求周长,创建类主类A来测试它。

    package com.hanqi.test; public class Triangle { private double a,b,c; public Triangle(double d,doubl ...

  2. 发现一个c++ vector sort的bug

    在开发中遇到一个非常诡异的问题:我用vector存储了一组数据,然后调用sort方法,利用自定义的排序函数进行排序,但是一直都会段错误,在排序函数中打印参加排序的值,发现有空值,而且每次都跟同一个数据 ...

  3. javaWEB总结(5):GET与POST请求

    前言:get和post请求无论在项目中还是在面试中都会经常遇到,这次主要写一个小页面测试一下他们的区别,本人知识有限理解和说的简陋就全当给自己留个备份,日后再补充. 1.项目的目录结构 2.web.x ...

  4. HDU 2732 Leapin' Lizards

    网络最大流+拆点.输出有坑!!! #include<cstdio> #include<cstring> #include<string> #include<c ...

  5. iOS不可变字符串的所有操作

    可以直接复制代码即可运行看看结果,方便理解 //NSString //OC字符串不能用printf输出 //但是遗憾的是OC没有一个从终端读取数据的方式,需要使用scanf读取C字符串然后转换成OC的 ...

  6. GITLAB管理自己的私有源码

    github是很好的公开源码管理器,但是,私有项目,需要付费才行,比较郁闷,特别是个人工作者     gitlab(英文我不咋滴),上貌似允许1000个私有项目,其他的权限,还没怎么看,估计简单的项目 ...

  7. react中文API解读一(快速开始)

    记下自己的react学习之路 ,官方文档写的很详尽,学起来应该比较简单 官方文档地址:react.http://reactjs.cn/react/docs/getting-started.html 1 ...

  8. hdu_5752_Sqrt Bo(xjb搞)

    题目链接:hdu_5752_Sqrt Bo 题意: 给你一个数,问你最少要开多少次方才能为1 题解: 我们发现如果给的数大于232 那么肯定在5次以内是开不出来的,所以直接输出TAT,然后小于的就模拟 ...

  9. restlet不能接受angular post过来的数据

    修改header create: { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded'} }

  10. git 使用整理

    git使用 Ubuntu 14.04 安装 apt-get install git 版本查看 git --version git version 配置(全局变量,默认值.可在具体仓库中设置改仓库使用的 ...