zoukankan      html  css  js  c++  java
  • Git使用之搭建基于SSH的Gitserver(上篇)

    1. 须要软件


    msysgit (Gitfor Windows)

    Copssh (OpenSSHfor Windows,新版本号已经開始收费了大家能够去搜索引擎找曾经的免费版Copssh_4.1.0下载)

    GitTortoiseGit


    我用的版本号各自是Git-1.9.2-preview20140411、Copssh_4.1.0、TortoiseGit-1.8.8.0-64bit.msi,其它版本号的安装和配置可能略有差异但也大同小异。


    2. 安装步骤

    2.1 安装msysgit


    很easy,基本就是一路下一步,有几个地方须要设置一下:






    2.2 安装Copssh


    注意不要使用默认的Program Files下的安装路径。也不要在路径中带空格,否则会引起不必要的麻烦导致失败,比如我就装在C:SSH。




    安装过程会创建一个名为SvcCOPSSH的系统用户用于启动Copssh的服务。这里默认就可以,提醒一点,假设卸载重装Copssh要记得手动删除系统用户SvcCOPSSH(windows用户),否则Copssh服务将无法正常启动。



    3. 配置Copssh


    为系统加入一个名为UIAdmin的管理员账户。

    从開始菜单中打开COPSSH Control Panel



    应该看到服务处于执行状态



    然后在Users选卡中加入一个用户,选择Windows shell类型,去掉password认证





    点击Keys创建该用户相应的訪问密钥



    点击Add button




    设置密钥相应的訪问password及保存后的名称



    在C:SSHhome文件夹下。找到UIAdmin文件夹。为其加入UIAdmin系统用户对其全然控制的权限。



    点击上步的ForWardbutton,完毕密钥文件的创建。



    生成的私钥文件UIAdminkey.ppk。相应的authorized_keys已经自己主动生成在 C:SSHhome<username>.ssh 文件夹下

    4. 配置git到SSH Server


    复制几个必要的文件到C:SSHin下

    从git安装文件夹下的libexecgit-core文件夹下将git.exe, git-receive-pack.exe, git-upload-archive.exe,git-upload-pack.exe拷贝到C:SSHin

    从git安装文件夹下的inlibiconv-2.dll拷贝到C:SSHin下。


    5. 创建git仓库


    安装TortoiseGit-1.8.8.0-64bit:



    创建仓库:



    来到C:SSHhome<username>目录下,新建一个目录作为git仓库,比如C:SSHhomeUIAdminUICode。我是通过TortoiseGit创建仓库,当然你也能够用其它gitGUI工具或通过命令行,记得勾选bare(用于多人作业)

    至此在Windows下基于SSH的Gitserver就搭建完毕了。


    5. 常见问题

    1、client通过URL,如 ssh://<username>@127.0.0.1:22/SSH/home/<username>/UIAdmin克隆代码时,提示gitdid not exit cleanly (exit code 128):

    【1】訪问SSH的防火墙阻止了22号port。

    通过单击「開始」button 「開始」button的图片,然后单击“控制面板”,打开“Windows 防火墙”。在搜索框中,键入防火墙,然后单击“Windows 防火墙”。

    在左窗格中,单击“高级设置”。 须要管理员权限 假设系统提示您输入管理员password或进行确认,请键入该password或提供确认。

    在“高级安全 Windows 防火墙”对话框的左窗格中。单击“入站规则”,然后在右窗格中,单击“新建规则”,加入22port。

  • 相关阅读:
    【Win 10 应用开发】获取本机的IP地址
    【Win 10应用开发】延迟共享
    【Win 10 应用开发】共享目标(UWP)
    【Win 10应用开发】响应系统回退键的导航事件
    编写Windows服务疑问2:探索服务与安装器的关系
    编写Windows服务疑问1:操作过程
    服务器常见错误代码500、501、502、503、504、505
    git reset与git revert的区别
    Redis集群方案怎么做?
    ThinkPHP设计模式与Trait技术
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/5095917.html
Copyright © 2011-2022 走看看