设为首页 收藏本站
查看: 1151|回复: 0

[经验分享] 【ssh简单版git-server 1】自建git-server

[复制链接]

尚未签到

发表于 2018-10-22 06:18:42 | 显示全部楼层 |阅读模式
  环境:centos和ubuntu系统都可以

  CentOS>  git version 1.7.1
  git-server 192.168.50.108
  git-client 192.168.50.112
  备注:基于linux系统下做ssh模式的gitserver,需要ssh免密钥,因为git用户是禁止登录的,clone时没有免ssh后会需要密码导致无法操作。
  部署:
  git-server:
  1.安装git软件(客户端和服务器端使用的是同一个软件)
  yum install git -y
  2.初始化仓库(鉴于此处是共享仓库,所有要建立裸仓库)
  mkdir /data/sample.git
  git init --bare /data/sample.git
  chown git.git /data/sample.git -R
  3.配置git用户使用的shell为git-shell
  which git-shell(返回结果/usr/bin/git-shell)
  chsh -s /usr/bin/git-shell git
  git-client:
  1.安装git软件
  yum install git -y
  2.配置用户的ssh密钥信息,并提供给git-server
  ssh-keygen -t rsa -C "sample@localhost.com" (与git config的信息一致,记录文件log信息,可查看是谁修改的。)
  假如你是用的是本台机器root用户,生成的密钥默认在/root/.ssh/下
  scp /root/.ssh/id_rsa.pub root@192.168.50.108:/tmp
  git-server:
  允许另外一天机器的用户无密钥访问git用户的信息

  mkdir /home/git/.ssh && cat>  git-client:
  1.clone远程server的裸仓库
  git clone git@192.168.50.108:/data/sample.git
  2.添加远程仓库作为源仓库
  git remote add origin git@192.168.50.108:/data/sample.git
  git remote -v(查看存在的仓库源)
  2.默认clone的是master仓库,可以直接在master更新
  cd sample/
  echo "this is a test file" >test
  3.配置git全局信息
  git config --global user.name 'test'
  git config --global user.email 'sample@localhost.com'
  4.添加并提交文件
  git add test
  git commit -m "this is fire commit"
  5.把修改后的文件推送的git-server源做共享
  git push -u origin master
  注:由于代码存在多个版本,且介于安全考虑master会被限制,用户可以自己创建分支,然后请求合并。 所以大多数修改并不是直接在master上。以下是分支操作
  1.clone maste后创建分支
  git checkout -b fenzhi
  git branch(查看当前所在分支)
  2.添加并提交文件
  echo "hello world " >fenzhifile
  git add
  git commit -m 'fenzhi'
  3.把新建的分支推送到git-server源做共享
  git push origin fenzhi
  git-client:测试
  1.测试master:换台机器(同样需要免ssh)或换个目录测试
  cd /tmp
  git clone git@192.168.50.108:/data/sample.git
  查看只有一个test文件,这个是我们刚才在master上添加的。
  cd sample/ && cat test
  2.测试fenzhi
  git clone git@192.168.50.108:/data/sample.git -b fenzhi
  同样刚才的fenzhi文件也存在,test也存在。因为我们是在master主要功能上修改的。如果文件没有相同的,那就是不同的项目。
  git帮助手册


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-624633-1-1.html 上篇帖子: Server 对象 错误 \'ASP 0178 : 80070005\' 下篇帖子: 删除已配对的View Security Server、View Replica Server
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表