创建远程git仓库

简介:

git仓库服务器配置;

两种方式:

方式一:使用git协议,创建的git仓库服务器,只能下载,不能上传;

方式二:使用http或https协议,安装httpd1.6.6以上版本就支持上传和下载等丰富的功能了;


本次实验物理机win7,虚拟机是两台centos7:


本地git仓库,node1:172.18.11.111

远程git仓库,noed2:172.18.11.112


方式图一:使用git协议创建git远程仓库:


在node2:

安装git-daemon

]# yum -y install git-daemon


初始化一个裸仓库:名称为myproject.git

]# cd /var/lib/git/

]# git init --bare myproject.git


]# ls /var/lib/git/myproject.git/

wKioL1dmPxOihOLvAAASZbCAxm0256.png


在node1:

克隆远程仓库:

]# git clone git://172.18.11.112/myproject.git

wKioL1dmPniAcjAfAAAZfVdT02U761.png


查看git查看配置等信息:

wKiom1dmP7mDwIKmAAA9hLaFlkg557.png

以上就完成远程git仓库的创建和本地下载远程仓库了;使用的git协议,不支持推送上传,要想实现推送要使用http协议;

注意:

git协议创建的服务器有缺陷:

第一,不支持推送;

第二,不支持认证;

第三,端口很特殊,tcp/9418




方式二:使用http协议进行创建git远程仓库:


要基于http协议实现git远程仓库,只有安装一个http服务即可。

在node2:

安装git-daemon

]# yum -y install git-daemon

]# yum -y install httpd


对于http协议的git仓库,要求http协议必须启动三个模块:

第一,支持路径别名;

第二,环境变量设定;

第三,cgi机制;

因为,基于http协议实际是使用poll脚本完成智能设定的;

查看三个模块:确保如下三个模块启用

wKioL1dmQMGiF8LqAAAPwQgwqC0480.png


创建裸仓库目录并授权:

]# mkdir /var/www/git

]# cd /var/www/git

]# git init --bare testproject.git

]# chown -R apache:apache /var/www/git

确保该目录属主属组为apache用户,否则会没有写操作权限;


]# vim /etc/httpd/conf/httpd.conf

#DocumentRoot "/var/www/html"


为提供git仓库基于http协议实现,创建新的配置文件:

]# vim /etc/httpd/conf.d/git.conf

wKioL1dmQomylwNnAAC5vjg8gj0818.png

]# httpd -t

]# systemctl start httpd.service

]# ss -tnl 查看80端口监听;


回到node1节点,克隆这个基于http协议的远程git仓库:

]# git clone http://172.18.11.112/git/testproject.git

]# cd testproject/

wKiom1dmQxbja49xAAAwXQj8D6g141.png


此时下载仓库到本地了,如果在这个远程跟踪分支上进行更改内容:

]# echo "new line" >  README

]# git add README

]# git commit -m "v0.1"


提交后再上传到远程服务器:

]# git push origin master 

输入授权的用户名和密码即可完成上传了:

wKiom1dmQ_aC_6V6AAAnB2807S8374.png


以上就是基于http协议创建git远程仓库的整个过程,当然配置好http协议的仓库,再配置https协议的git仓库,无非就是多了一个步骤配置CA证书等工作;


使用这种方式进行认证非常不安全,可以做htsps协议方式进行;

把账号密码放在文件里,也不很妥当,放在互联网上的公共仓库时,还可以基于mysql认证,把账号、密码放在mysql数据库表里;

以上这些自己管理起来都非常麻烦,就出现了互联网上专门做代码托管的服务站点。











本文转自 crystaleone 51CTO博客,原文链接:http://blog.51cto.com/linsj/1790778,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
开发工具 git
git篇3:idea中创建项目并提交到远程Git仓库
git篇3:idea中创建项目并提交到远程Git仓库
219 2
|
2月前
|
开发工具 git 开发者
git仓库分支管理
git仓库分支管理
|
1月前
|
Linux 项目管理 开发工具
Git项目管理——仓库概述(一)
Git项目管理——仓库概述(一)
27 1
|
11天前
|
开发工具 git
git开源仓库路径在那里找
git开源仓库路径在那里找
git开源仓库路径在那里找
|
3天前
|
网络安全 开发工具 git
使用git克隆仓库报错:Warning: Permanently added‘github.com’ to the .....(ssh )
所以,你可以安全地忽略这个警告,它不会影响到你使用git克隆仓库。如果你已经成功克隆了仓库,那么一切都在正常工作。如果你在克隆过程中遇到其他问题,那可能需要查看具体的错误信息来解决。
4 0
|
1月前
|
开发工具 git
git常用指令 , 配置git仓库
git常用指令 , 配置git仓库
|
19天前
|
Shell 开发工具 git
如何使用git上传代码github仓库
如何使用git上传代码github仓库
|
20天前
|
Shell Linux 网络安全
Git仓库的介绍和使用
Git仓库的介绍和使用
|
2月前
|
人工智能 Linux 开发工具
[oeasy]python018_ 如何下载github仓库_git_clone_下载仓库
在这个文档中,作者讨论了如何继续进行编程学习,特别是关于GitHub的使用。首先,回顾了从编写简单代码到管理大量代码的过程。然后,提到了通过“保存运行一条龙”操作来处理代码,以及GitHub作为全球最大的开源软件平台的重要性。在GitHub上,用户可以找到各种软件项目,包括Linux、Python和Blender等。 作者解释了GitHub的基本操作,如点赞(star)、 fork(复制项目)和watch(关注项目更新)。还介绍了如何下载项目到本地,通过`git clone`命令复制仓库的URL并将其粘贴到终端进行下载。如果遇到问题,可以尝试更换HTTP链接或等待一段时间重试。
202 2
|
2月前
|
Linux 开发工具 数据安全/隐私保护
如何在linux中用git提交代码到仓库
如何在linux中用git提交代码到仓库