搞开发的同学都应该知道git,可以说git是目前最先进的分布式版本控制系统,没有之一。git的诞生也有着传奇色彩,最初Linux内核的版本控制使用的是闭源的商业软件BitKeeper,后来因为一些事情Linux团队跟他们闹翻了,Linus Torvalds决定开发自己的版本管理系统不再受制于人,10天后git诞生了,没错是10天!

数据无价,本教程的操作有一定的风险,开始前请备份重要数据!!!

git的优点不再赘述,主要讲一下如何在树莓派上用Gitea部署自己的git代码托管平台。

如果是大、中型团队推荐使用GitLab,如果是中、小型团队或者个人使用,那么Gitea非常适合你。

Gitea是一个开源社区驱动的Gogs克隆,是一个轻量级的代码托管解决方案,后端采用Go编写,采用MIT许可证。可运行在WindowsmacOSLinuxARM等平台。相比Gogs来说更新频率更高,推荐使用。

推荐使用基地2.0系统进行部署。

首先参考https://linuxer.top/archives/raspi-install-mysql57.html这篇文章安装Mysql数据库或者MariaDB,当然也可以不安装,Gitea也支持使用SQLite,推荐使用MysqlMariaDB

Mysql创建数据库gitea编码使用utf8mb4,创建用户gitea,把数据库gitea的权限赋给用户gitea

配置环境:

#更新系统
sudo apt update
sudo apt upgrade

#安装git
#如果想用最新版git可以参考git官网编译安装
sudo apt install git

#创建git用户
sudo useradd -m -s /bin//bash git

#切换到git
su - git

#创建工作目录
mkdir gitea

cd gitea

#到https://github.com/go-gitea/gitea/releases
#找最新的arm64发布版本地址
#目前是1.12.1
#下载
wget https://github.com/go-gitea/gitea/releases/download/v1.12.1/gitea-1.12.1-linux-arm64.xz

#解压
xz -d gitea-1.12.1-linux-arm64.xz

#赋执行权限
chmod u+x gitea-1.12.1-linux-arm64

#创建软连接,方便更新
ln -sf gitea-1.12.1-linux-arm64 gitea

#如果需要更新版本的时候,先停掉服务
#下载最新的可执行文件解压
#创建软连接到最新版
#ln -sf gitea-x.xx.x-linux-arm64 gitea
#然后启动服务

#启动服务
#sudo systemctl start gitea.service

#停止服务
#sudo systemctl stop gitea.service

创建systemd服务
开一个新终端窗口,用root权限创建文件/etc/systemd/system/gitea.service,内容如下:

[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target

#根据使用的数据库打开下面的注释
#我这里用的mysql
Requires=mysql.service
#Requires=mariadb.service

[Service]
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/home/git/gitea/
ExecStart=/home/git/gitea/gitea web
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/home/git/gitea

[Install]
WantedBy=multi-user.target

使用root权限启动服务:

#刷新服务
systemctl daemon-reload

#设置开机启动
systemctl enable gitea.service

#启动
systemctl start gitea.service

这时服务已经启动,访问ip:3000/install进行安装配置,我这里的地址是192.168.1.240:3000/install

数据库配置:
20200624194200.png

一般配置,这里的各种路径根据自己需求进行填写,不明白什么意思的就保持默认:
20200624194453.png

可选设置中配置管理员账户,注意,这里不能用admin作为用户名:
20200624201501.png

没有提到的配置大家根据自己需求设置,然后开始安装,安装完成后跳转到首页:
20200624201825.png

部署完成,更多的功能大家自己探索吧~

本文为原创文章,版权归 Kevin's Blog 所有,转载请联系博主获得授权。

已有 3 条评论

  1. 大神更新得很勤啊,我都还没时间跟着做,有空一定要全部都折腾一下。

  2. 我一直不太理解这个git是干嘛用的,是不是理解成自己的本地代码仓库?

    1. @灵

      就是个分布式的版本控制软件

发表评论