ImageVerifierCode 换一换
格式:DOCX , 页数:28 ,大小:708.55KB ,
资源ID:12633526      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12633526.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Windows服务器下搭建基于SSH的GIT服务器.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Windows服务器下搭建基于SSH的GIT服务器.docx

1、Windows服务器下搭建基于SSH的GIT服务器Windows服务器下搭建基于SSH的GIT服务器一、工具/原料服务端软件1、 Git for Windows: MsysGit(Git-1.8.1.2-preview20130201.exe),这是真正的git,高版本的安装在后面配置时有些不同。2、 OpenSSH for Windows: CopSSH(Copssh_4.1.0_Installer.exe),这是一个windows平台的SSH服务器服务器系统:Windows Server 2008 SP1客户端软件1、 Git for Windows: SourceTree(SourceT

2、reeSetup_1.6.23.exe),Git 和 Hg 客户端,同时也是Mercurial和Subversion版本控制系统工具客户端系统:Windows 8.12、生成用户1、在服务器上生成Windows用户,取消用户下次登录时须更改密码,设置密码永不过期选中我的电脑,点击管理,进入计算机管理界面,点击系统工具下的本地用户和组,再点击本地用户和组下的用户。进入以下界面在空白处右击,选择新用户,输入用户名,密码等,点击创建,用户创建成功。如图说明:我把这个“yichi”设为了系统管理员。2、将该用户隶属于GitUser组(如尚未生成该组,则先生成该组)点击本地用户和组下的组。进入以下界面在

3、空白处右击,选择新建组,输入组名GitUser,点击创建,组创建成功。如下图在本地用户和组下的组中选择刚才新建的组GitUser,右击选择属性,添加成员,如下图点击“确定”完成新建用户。3、给GitUser组赋权限如果我们要管理的仓库已存在,或者在后面创建仓库后,把仓库文件夹的权限赋给添加的用户组GitUser,如下所示:仓库文件夹-属性-安全-编辑3、服务器端安装及部署1、安装Git关于安装路径说明,最好放到每个盘的根目录下,这里我放到了D盘根目录下。注意:路径最好不要有空格,因为空格不好处理(需要转义符转义),所以这也是没有放到Program Files目录下的原因。接下来的几步,按照图片

4、所示选择即可。下面选择第三个,不去转换成unix的代码风格等待安装完成即可2、安装SSH安装在根目录下,避免路径中有空格,造成不必要的麻烦。此处是设置SSH启动服务的密码。安装好后提示通过“COPSSH Control Panel”添加用户。完成安装。3、生成SSH keyGit是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要先在Git里面生成SHH Key,打开Git Bash。(1) 检查SSH keys是否存在:查看路径C:UsersAdministrator.ssh,或者输入下面的命令,如果有文件id_rsa.pub 或 id_dsa.pub,则备份。如果已存在文件的拥有者

5、是想要创建的用户,则忽略步骤(2),否则进入步骤(2)生成SSH key $ ls -al /.ssh # Lists the files in your .ssh directory, if they exist(2) 生成新的SSH key第一步:设置Git的user name和email查看是否存在要添加key的用户,全局的通过vim /.gitconfig来查看,局部的通过当前路径下的 .git/config文件来查看,不存在则设置: $ git config -global user.name yichi $ git config -global user.email sunyich

6、i163.第二步:生成public/private rsa key pair在命令行中输入: $ ssh-keygen -t rsa -C sunyichi163.默认会在相应路径下(/your_home_path)生成id_rsa和id_rsa.pub两个文件,如下面代码所示: $ ssh-keygen -t rsa -C sunyichi163. # Creates a new ssh key using the provided email Generating public/private rsa key pair. Enter file in which to save the ke

7、y (/your_home_path/.ssh/id_rsa):回车。第三步:输入passphrase(本步骤可以跳过,直接2个回车,密码为空)设置passphrase后,进行版本控制时,每次与GitHub通信都会要求输入passphrase,以避免某些“失误”: Enter passphrase (empty for no passphrase): Type a passphrase Enter same passphrase again: Type passphrase again样本结果: Your identification has been saved in /your_home_

8、path/.ssh/id_rsa. Your public key has been saved in /your_home_path/.ssh/id_rsa.pub. The key fingerprint is: 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db sunyichi163.第四步:将新生成的key添加到ssh-agent中 # start the ssh-agent in the background $ eval $(ssh-agent -s) Agent pid 4280 $ ssh-add /.ssh/id_rsa Ente

9、r passphrase for /your_home_path/.ssh/id_rsa: Identity added: /your_home_path/.ssh/id_rsa (/your_home_path/.ssh/id_rsa)以上所有配置如下图所示:4、配置SSH用户打开SSH控制面板(COPSSH Control Panel)开始配置SSH用户。选中“Users”选项卡,点击Add按钮添加用户。选择用户名User,此处可以选择刚刚安装SSH时设置的“yichi”用户,也可以自己新建一个用户来作为管理账户。注意Access Type选择“Linux shell and Sftp”,

10、并把options的第一个选项“Allow password authentication”前面的勾去掉,因为我们要用公私钥来登陆,不用密码登陆。点击“Apply”按钮完成添加用户,如下图。点击右下方的“Keys”按钮,弹出窗口。这里显示的就是ssh服务器中保存的公钥信息了。若有公钥信息,用户就可以使用对应的私钥来远程登陆到ssh服务器进行相应的操作了。第一次我们安装的时候,public key里应该是空的,我们现在要做的,就是把上一步中,我们自己生成的公钥信息,添加到这里来,步骤如下。找到COPSSH的安装目录(我这里是D:ICW),然后打开其中的home文件夹,可以看到里面有以我们刚加入的

11、user的名字命名的文件夹,进入其中,打开.ssh文件夹。在里面新建一个名字为authorized_keys的文件。注意,这里没有任何后缀。然后用记事本打开,然后将刚才配置git时生成的SSH公钥(id_rsa.pub)里的全部信息复制拷贝到这个文件里。然后,保存退出。回到COPSSH Control Panel中,将点击“Keys”产生的窗口关闭后,再打开,会看到其中有了一个公钥信息了,如下图:5、确认防火墙开放了22端口,没有禁止22端口的TCP/IP通信(1) 通过单击开始按钮,再单击“控制面板”,然后单击“Windows 防火墙”。如下图所示:(2) 在左窗格中,单击“高级设置”。如果

12、系统提示您输入管理员密码或进行确认,请键入该密码或提供确认。(3) 在“高级安全 Windows 防火墙”对话框的左窗格中,单击“入站规则”,然后在右窗格中,单击“新建规则”。(4) 选择“端口”,点击“下一步”。(5) 选择“TCP”和“特定本地端口”,并在输入框中输入端口号“22”,点击“下一步”。(6) 选择“允许连接”,并点击“下一步”。(7) 如上图选择,并点击“下一步”。(8) 如上图,在名称中填写22,并点击“完成”。在“高级安全 Windows 防火墙”中可以看到我们刚刚新建的端口号22,如下图所示。6、登陆SSH服务器到了这里,我们已经可以使用我们的私钥,来登陆这个ssh服务

13、器了。打开“Git Bash”。在命令行里输入: $ ssh yichi192.168.61.17yichi就是在COPSSH中配置的用户名,192.168.61.17是我的ip地址。Are you sure you want to continue connecting (yes/no)?后面键入yes,回车,如下图:运行如下unix命令行,如运行未出错,则完毕。7、使用GIT命令接下来你会发现,登陆成功以后,可以使用linux的命令,但是git的命令还是不能使用,别急,接下来我们解决这个问题。使用的解决方法很简单,如下:(1) 将$ Gitlibexecgit-core目录下的git.ex

14、e , git-receive-pack.exe , git-upload-archive.exe , git-upload-pack.exe复制到$ICWbin目录下;(2) 将$Gitbin目录下的libiconv-2.dll复制到$ICWbin目录下;(3) 将$Git下的share目录整个拷贝到$ICW下。其中,$Git是指Msysgit的安装目录,同理$ICW指CopSSH的安装目录。至此,配置完毕,接下来,开始使用。4、创建仓库,git服务器的测试(1) 打开“Git Bash”,使用下面的命令连接到ssh服务器。 $ ssh yichi192.168.61.17这个命令上面有说明

15、。(2) 然后依次使用下列命令: $ cd d: yichiebs-44324 /cygdrive/d $ cd work/ yichiebs-44324 /cygdrive/d/work/ $ mkdir testgit mkdir: cannot create directory testgit: File exists yichiebs-44324 /cygdrive/d/work/ $ rm -rf testgit yichiebs-44324 /cygdrive/d/work/ $ mkdir testgit /创建testgit文件夹 yichiebs-44324 /cygdriv

16、e/d/work/ $ cd testgit /进入testgit文件夹 yichiebs-44324 /cygdrive/d/work/testgit $ git init /版本库初始化,会以testgit为库名建立一个新库 Initialized empty Git repository in D:/work/testgit/.git/如果使用了git init初始化,则远程仓库的目录下,也包含work tree,当本地仓库向远程仓库push时, 如果远程仓库正在push的分支上(如果当时不在push的分支,就没有问题), 那么push后的结果不会反应在work tree上, 也即在远程

17、仓库的目录下对应的文件还是之前的容。解决方法:必须登录到远程的那个文件夹下使用命令 git reset -hard 才能看到push后的容。(3) 创建first.txt和second.txt文本文档,并添加到Git。注意:下面这一步是必须的,否则没有生产分支master,无法在客户端进行任何操作。 $ touch first.txt second.txt $ git status # On branch master # Untracked files: # (use git add . to include in what will be committed) # # first.txt

18、# second.txt nothing added to commit but untracked files present (use git add to track) $ git add . /将所有文件添加至Git,注意add后面有一个空格和英文字符点号(.) $ git config -global user.name “yichi” /设置用户名 $ git config -global user.email “sunyichi163.” /设置地址 $ git commit -m “init” /将修改提交至Git,“init”为提交的容说明 master (root-comm

19、it) fc36463 test add two files 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 first.txt create mode 100644 second.txt $ ls first.txt second.txtGit默认拒绝了push操作,需要进行设置,在Git仓库/.git/config文件后面添加如下代码:receivedenyCurrentBranch = ignore至此,就可以把代码push到服务器。5、自己搭建git服务器用途做了上面这些到底有什么用呢?如果你是在自己家里上网,你可以在自己电脑上搭建一个git服务器,提供给你的朋友使用,可以和你的朋友一起开发一个东西,而且不用再一起就行,只要能连上因特网。当然要做一个服务器,首先要能连接到外网,如果你处在路由器的局域网,需要做端口映射,ssh服务器的端口号是22。6、客户端安装

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1