Windows环境Git服务器搭建

来源:互联网 发布:mac编辑hosts文件 编辑:程序博客网 时间:2024/06/05 16:19

、工具安装

1.服务端工具:CopSSHGit

2.客户端工具:TrotoiseGitGit

(注:安装目录最好不要用默认路径, 确保安装路径中没有空格。 其他步骤一路Next即可)

、服务配置

1.  安装完成后,我们要做个关联,主要是关联gitssh,因为我们这里git要用ssh协议来连接服务器。操作方法是将git中的相关文件copysshbin目录中

1. Git\bin\ libiconv-2.dll

2. Git\libexec\git-core\git.exe

3. Git\libexec\git-core\git-receive-pack.exe

4.Git\libexec\git-core\git-upload-archive.exe

5. Git\libexec\git-core\git-upload-pack.exe

将这些文件copyCopSSHbin目录下

2.我们需要在服务器上创建个账号,普通账号即可,我这里创建了个普通账号叫git

3.利用COPSSH Control Panel创建一个ssh账号:

 

如下图所示,我们选择刚刚创建的账号git

 

接下来这里注意下,Access type 的选择,还有 Allow password authentication没有勾选

 

点击Apply,账号创建成功。

 

至此,服务器的配置已告一段落了,我们可以在服务器上创建个仓库,以备后续的连接测试。由于我们之前创建了一个叫git的账号,在ssh的安装目录下的home目录里面,多了一个git目录。

进入该目录,右键选择Git Bash,在命令行下,依次运行以下命令(如果右键没有git bash,在桌面或开始菜单中打开git bash进入此目录)

 

1.mkdir myproject      //创建我的项目目录,命名为myproject

 2.cd myproject           //进入该目录

3.touch helloworld.txt     //创建helloworld.txt文件

4.git init                      //初始化仓库

5.git add .                    //目录下所有文件加入暂存区

6.git config  --global user.email  “xxxx@xxx.com”      //创建全局git账号

7.git config  --global user.name  “Jason Feng”            //创建全局git账号

8.git commit  -m  “init myproject repo”     //将暂存区的文件提交到仓库

 

9.git reset --    //将远程分支提交的代码合并的主分支。

注:Git默认设置克隆版本修改master版本内信息后不能提交修改,如需开放权限,要修改服务器端每个仓库.git/config文件后面添加如下代码:

[receive]

denyCurrentBranch = ignore

注:重点在这一步,修改配置文件,找到COPSSH安装的目录下面的etc目录,比如C:\SSH\etc,用记事本打开ssh_configsshd_config这两个文件,两个文件都要修改。

修改如下内容:

        找到PasswordAuthentication,如果前面有#号,删掉,如果后面是yes,改成no

        PasswordAuthentication no

        找到PubkeyAuthentication,如果前面有#号,删掉,如果后面是no,改成yes

        PubkeyAuthentication yes

        找到Port 22,删除掉前面的#

        Port 22

 

、客户端配置

1.安装完成后,需要创建公钥对

主要用于与服务器短的链接。打开git bash 输入ssh-keygen命令,对后续命令行提示,一路回车即可。

2. 接下来,为了使服务器认识我们的公钥

我们需要将密钥对中的公钥上传至服务器,用记事本打开刚刚生成的公钥文件id_rsa.pub,复制里面的所有内容。

再回到服务器端,在我们之前创建的ssh的账号git对应的目录下home/git/.ssh,新建文件authorized_keys文件,注意这里没有文件后缀名,将刚刚复制的公钥粘贴进去,保存好

注:以上12步骤是git命令行公钥,tortoiseGit工具创建公私钥请看4步骤。

最后,要确保服务器端口22是打开的

至此,客户端相关配置基本完成。我们可以开始clone了,创建一个目录,然后Git Bash,运行以下命令

//这里我的服务器地址为192.168.1.168

git clone ssh://git@192.168.1.168:22/ssh/home/git/myproject

 

3.接下来配置tortoiseGit管理工具:

先在TortoiseGit安装目录里面找到Settings,打开界面,找到General,点击“Check now”按钮,可以看到当前git版本。这时候说明,你的配置已经OK,可以开始进行下一步的操作了Git.exe Path Git文件夹下bin的目录。

 

在项目文件夹用鼠标右键点击,可以看到GitTortoiseGit已经嵌入右键了,选择“Git Create repository here”,然后点击“OK”按钮,再点击“Proceed”,这样就会在项目文件中创建了一个“.git”的隐藏目录。

 

鼠标右键,选择“TortoiseGit”->“Settings”,在“User Info”输入NameEmail

 

点击“Remote”,在Remote输入名称,URL输入GitHTTPS或者SSH地址。点击“Add New/Save”按钮添加一个项目

 

至此下载和安装配置TortoiseGit就完成了

4.TortoiseGitSSH密钥的配置方法

在安装了TortoiseGit的目标客户机上,如图运行TortoiseGit软件包中的Puttygen程序:

 

PuTTY Key Generator应用对话框中选择Generate按钮:

出现如下图的进度条,将鼠标在Key选项框中空白处随意移动,进度条将行进:

移动鼠标直至进度条结束,出现如下画面:

选择Save private key,弹出如下对话框,选择是,保存私钥至private.ppk。

选择Save public key, 选择保存公钥至public.ppk,将public.ppk内容复制到服务器端authorized_keys文件中,格式必须相同。

配置SSH登录密钥,如图运行TortoiseGit软件包中的Pageant程序:

右键选择Windows桌面右下角(通知区域)的图标,出现如下菜单:

选择Add Key菜单栏,出现Select Private Key File文件选择框,选择之前生成的对应的私钥文件(.ppk)文件,配置完成。

 

0 0
原创粉丝点击