gitlab/git无界面版/国产gogs轻量级仓库搭建,ssh协议免密clone远程项目到本地,本地push新项目到远程操作

目录

为什么不用gitlab

无界面版本GIT,最轻量了,只是维护稍困难

国产开源git——gogs文档

 

为什么不用gitlab

先安装一个gitlab

docker run   -p 8112:80 -p 222:22 --name gitlab \
-v /home/gitlab/config:/etc/gitlab  \
-v /home/gitlab/logs:/var/log/gitlab \
-v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce

磁盘说:镜像好大

[root@iz2vcbxdfdrfac7remhtorz ~]# docker images|grep gitlab
docker.io/gitlab/gitlab-ce                latest              033bcfa1b036        6 days ago          2.09 GB
 

启动也是很慢,进入容器看看,有个2G+的embedded,里面内置了ruby python grafana postgresql  redis 等好多东西

root@7df8e580d553:/opt/gitlab# pwd 
/opt/gitlab
root@7df8e580d553:/opt/gitlab# du -sh *
3.1M    LICENSE
4.2M    LICENSES
32K    bin
188K    dependency_licenses.json
2.0G    embedded
240K    etc
4.0K    init
56K    licenses
4.0K    service
520K    sv
8.0K    var
32K    version-manifest.json
12K    version-manifest.txt
 

空闲情况下的cpu memory消耗也是杠杠滴

模板

 

无界面版本GIT,最轻量了,只是维护稍困难

1.1 安装Git(无web界面版git仓库)

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel (可选)
yum install git

1.2 创建一个git用户组和用户

groupadd git
useradd git -g git

 

1.3、idea/git bash免密登录拉取linux git代码

1.创建免密登录需要的文件及配置权限
cd /home/git/ &&mkdir .ssh &&chmod 755 .ssh &&touch .ssh/authorized_keys &&chmod 644 .ssh/authorized_keys

2.在Linux初始化一个仓库用于测试并设置权限
git init --bare /home/gitrepo/test1.git  &&chown -R git:git  /home/gitrepo

3.Windows打开Git bash,ssh-keygen -t rsa -C "523083921@qq.com"生成公钥rsa.pub,将其写如authorized_keys里面

4.Git bash 执行 git clone git@192.168.203.132:/home/gitrepo/test1.git 或idea拉取Linux git仓库的项目到本地Windows

特别注意:
① 这里是无界面版本的git仓库,只能通过ssh协议拉取代码,即 git clone linuxUserName@IP:/仓库在服务器的绝对路径 
②这里专门建了一个用户git来管理仓库目录,直接使用root用户也是可以的,直接将window生成的rsa.pub写到/home/root/.ssh/authorized_keys,git clone root@IP:/仓库在服务器的绝对路径 即可免密拉取代码
③使用github\gitee\gitlab等有界面的git仓库一般还支持http/https协议拉取代码


5.安全设置,指定/etc/passwd 的git用户命令解释器:...git:/bin/bash改为...git:/usr/bin/git-shell




1.4、idea push新项目到linux git仓库

1.idea创建新springboot项目,idea打开terminal命令行
2.git init 初始化本地仓库
3.git add . 将当前文件夹下所有文件加入版本管理
4.git commit -m "init commit。。。" 提交到本地仓库,这时git branch可以看到一个master分支
5.先手动在Linux git仓库目录建立该仓库并赋予权限:git init --bare /home/gitrepo/test2.git &&chown -R git:git  /home/gitrepo/  如果使用gitee等第三方库:在gitee创建bio-nio-netty.git这个仓库
6.git remote add origin   git@192.168.203.132:/home/gitrepo/test2.git  即可在Linux的 仓库test2.git添加新分支origin; ;如果使用gitee等第三方库:git remote add origin  git@gitee.com:XX2020/bio-nio-netty.git,)
7.git push -u origin master  将本地的master分支推到远程的origin分支

其它:idea push新项目到第三方仓库,如github

1.将ssh公钥设置到github:用户->Settings->ssh keys
2.github创建仓库
2.idea terminal进行push
  echo "# jwolf" >> README.md
  git init
  git add README.md
  git commit -m "first commit"
  git remote add origin git@github.com:jwolf123456/test1.git
  git push -u origin master

 


 

安装,100M左右

docker run --name=gogs  -p 8112:3000 -v /home/data/git-gogs:/data gogs/gogs

首次访问设置

 

创建项目test2

idea terminal推送本地项目到test2,密码为上面设置的管理员账户/密码

git remote add origin git@47.108.28.18:admin_gogs/test2.git
git push -u origin master

拉取gogs上的其它项目到本地,使用http协议可以直接拉取


,SSH协议可能是设置问题不能拉取,但是仓库目录是映射到宿主机了的,故可直接用root用户拉取

root@IP:/home/data/git-gogs/git/gogs-repositories/admin_gogs/test.git

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值