使用Gitea搭建git本地服务器

前言

作为一个程序员,我认为代码管理是很重要的,在项目开发过程中,随着代码的不断更新迭代,可能已经不知道一开始的代码是什么样子了,又或者时间久了不知道自己改了什么,而git就是一个很好的代码管理工具,可以很好的记录代码的每次更改,以及追溯和回退版本。一般公司都会有git或者svn管理工具,大部分人可能都只知道在现有的环境使用git工具,今天本文就教你怎么搭建git服务器。

创建git用户

创建一个新的git用户

复制代码
sudo adduser git

接着按照提示随便输就好了

安装gitea

在安装gitea之前我们先安装必要的软件包

复制代码
sudo apt-get update
sudo apt-get install git sqlite3

接着下载gitea,并移动到/usr/local/bin/目录下

复制代码
wget -O gitea https://dl.gitea.io/gitea/1.16.7/gitea-1.16.7-linux-amd64
chmod +x gitea
sudo mv gitea /usr/local/bin/

然后创建git用户和目录

复制代码
sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}
sudo chown git: /var/lib/gitea/{data,indexers,log}
sudo chmod 750 /var/lib/gitea/{data,indexers,log}
sudo mkdir /etc/gitea
sudo chown root:git /etc/gitea/
sudo chmod 770 /etc/gitea/

配置gitea,创建一个systemd服务文件

复制代码
sudo gedit /etc/systemd/system/gitea.service

添加以下内容

复制代码
[Unit]
Description=Gitea
After=syslog.target
After=network.target

[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target

最后启动gitea

复制代码
sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea

gitea使用

gitea启动后,就可以在网页登陆了,注意虚拟机的网络连接最好时桥接模式,确保电脑主机和git服务器在同一个网段

gitea默认端口是3000,在windows浏览器输入ip+端口,就可以进入gitea配置界面

如果没加载出来就重启服务,并且更改一下防火墙端口规则

复制代码
systemctl stop gitea
systemctl start gitea
sudo ufw allow 3000/tcp

选择sqlite3,会自动填充配置

直接划到最下面立马安装即可,这是安装后的界面

点右上角的注册,注册一个用户

接下来就是和我们平时用的git工具一样的操作了,添加电脑主机的ssh密钥,就可以建git仓了

参考文章:【Tools】Ubuntu20.04安装VMware Tools详解_ubuntu 20.04 安装vmware tools-CSDN博客

一招教你搭建git服务器_git 服务器如何搭建-CSDN博客

相关推荐
云攀登者-望正茂2 小时前
特性分支合并develop引发的污染问题
git
HYNuyoah4 小时前
3X-UI Reality 搭建指南
ubuntu·ui·docker
就叫年华吧丶4 小时前
Git Bash、CMD 与 PowerShell 的区别详解
linux·git·命令行·powershell·cmd·gitbash
白玉cfc5 小时前
Git提交规范
git·github
郝亚军15 小时前
ubuntu通过samba,让win11可以访问其共享文件夹
linux·服务器·ubuntu
电化学仪器白超18 小时前
小乌龟Git全程图形化操作指南:嵌入式本地版本管理与Gitee私有云备份实战
git·python·单片机·嵌入式硬件·物联网·gitee·自动化
K3v21 小时前
【git】删除本地以及远端已经合并到master的分支
大数据·git·elasticsearch
云攀登者-望正茂1 天前
将 develop 分支拉取到特性分支时解决合并污染问题
git
金銀銅鐵1 天前
[git] 如何找到已经“丢失”的 commit?
git·后端
尘世壹俗人1 天前
linux编译安装git
linux·运维·git