柚子快報(bào)激活碼778899分享:運(yùn)維 Gitea的簡單介紹
柚子快報(bào)激活碼778899分享:運(yùn)維 Gitea的簡單介紹
?明明跟你說過:個(gè)人主頁
?個(gè)人專欄:《Kubernetes航線圖:從船長到K8s掌舵者》??
?行路有良友,便是天堂?
目錄
一、引言
1、Gitea的起源
2、為什么要使用版本控制系統(tǒng)
二、Gitea基礎(chǔ)介紹?
1、Gitea是什么
2、Gitea與其他版本控制系統(tǒng)的比較(GitLab, GitHub等)
三、在Centos上安裝Gitea
1、安裝Mysql數(shù)據(jù)庫
2、二進(jìn)制安裝Gitea
3、配置Gitea?
四、Gitea的使用與操作
1、創(chuàng)建倉庫
2、代碼提交?
3、Gitea Bash 常用命令
一、引言
1、Gitea的起源
?
Gitea是一個(gè)基于Go語言開發(fā)的開源自助Git服務(wù),它是Gogs的一個(gè)分支(或者說是一個(gè)社區(qū)驅(qū)動(dòng)的Fork)。Gogs是一款輕量級的自助Git服務(wù),最初由Unknwon開發(fā),于2014年5月發(fā)布首個(gè)版本。然而,由于Gogs項(xiàng)目的一些社區(qū)成員對項(xiàng)目的發(fā)展方向和功能有不同的看法,并希望推動(dòng)一些新的特性和改進(jìn),因此一些社區(qū)成員選擇從Gogs分叉出一個(gè)新的項(xiàng)目,這就是Gitea。
Gitea的開發(fā)始于2016年11月,最初由社區(qū)的一些活躍成員發(fā)起并推動(dòng),他們致力于構(gòu)建一個(gè)更加靈活、穩(wěn)定和功能豐富的自助Git服務(wù)。Gitea的開發(fā)一直由社區(qū)的志愿者貢獻(xiàn)代碼和維護(hù),因此它成為了一個(gè)受歡迎的開源項(xiàng)目,并在開源社區(qū)中得到了廣泛的應(yīng)用和認(rèn)可。
?
2、為什么要使用版本控制系統(tǒng)
版本控制系統(tǒng)(Version Control System,VCS)是一種管理文件版本的工具,它可以幫助團(tuán)隊(duì)協(xié)作開發(fā),追蹤文件變更歷史,并且有效地管理代碼庫。
以下是使用版本控制系統(tǒng)的幾個(gè)主要原因:
版本管理:版本控制系統(tǒng)允許開發(fā)人員追蹤文件的每個(gè)版本和變更,包括修改、添加和刪除操作。這樣可以確保團(tuán)隊(duì)成員了解每個(gè)文件的歷史變更情況,方便追溯問題和恢復(fù)歷史版本。團(tuán)隊(duì)協(xié)作:多人協(xié)作開發(fā)時(shí),版本控制系統(tǒng)可以確保團(tuán)隊(duì)成員之間的代碼同步和協(xié)作順利進(jìn)行。開發(fā)人員可以輕松地共享和合并彼此的代碼變更,減少沖突和重復(fù)勞動(dòng)。備份和恢復(fù):版本控制系統(tǒng)提供了一種備份和恢復(fù)文件的方法,即使發(fā)生意外或者錯(cuò)誤操作,團(tuán)隊(duì)也可以輕松地恢復(fù)到之前的穩(wěn)定狀態(tài)。分支管理:版本控制系統(tǒng)允許開發(fā)人員創(chuàng)建分支,這樣可以在不影響主線開發(fā)的情況下進(jìn)行獨(dú)立的功能開發(fā)或者實(shí)驗(yàn)性工作。分支可以隨時(shí)合并回主線開發(fā),保持代碼庫的整潔和穩(wěn)定。代碼審查:通過版本控制系統(tǒng),團(tuán)隊(duì)可以方便地進(jìn)行代碼審查,提高代碼質(zhì)量和安全性。開發(fā)人員可以提交代碼變更請求,其他團(tuán)隊(duì)成員進(jìn)行審查并提供反饋意見,確保代碼符合規(guī)范和最佳實(shí)踐。
?
二、Gitea基礎(chǔ)介紹?
1、Gitea是什么
Gitea是一個(gè)開源的自托管 Git 服務(wù),類似于 GitHub、GitLab 等平臺。它提供了一整套完整的版本控制系統(tǒng)和協(xié)作開發(fā)工具,使團(tuán)隊(duì)能夠輕松地托管、管理和協(xié)作開發(fā)項(xiàng)目。
以下是 Gitea 的一些主要特性:
輕量級:Gitea 是一個(gè)輕量級的 Git 服務(wù),提供了快速、穩(wěn)定的代碼托管和協(xié)作開發(fā)環(huán)境。易于安裝和部署:Gitea 提供了簡單易用的安裝和部署方式,可以在各種操作系統(tǒng)上快速搭建自己的 Git 服務(wù)。自托管:Gitea 支持自托管,用戶可以在自己的服務(wù)器上部署和管理 Gitea 實(shí)例,完全掌控自己的代碼和數(shù)據(jù)。多用戶支持:Gitea 支持多用戶管理,可以創(chuàng)建多個(gè)用戶賬號,并且為不同的用戶分配不同的權(quán)限和角色。團(tuán)隊(duì)協(xié)作:Gitea 提供了團(tuán)隊(duì)協(xié)作和代碼審查功能,支持代碼分支、合并請求、問題跟蹤等工作流程,方便團(tuán)隊(duì)成員之間的協(xié)作開發(fā)。輕量級界面:Gitea 的用戶界面簡潔清晰,操作簡單易懂,適合開發(fā)者和團(tuán)隊(duì)快速上手使用。社區(qū)支持:Gitea 是一個(gè)活躍的開源項(xiàng)目,擁有一個(gè)熱情的社區(qū),提供了豐富的文檔、教程和支持資源,方便用戶學(xué)習(xí)和使用。
Gitea 是一個(gè)功能全面、易于安裝和部署、輕量級且自由的自托管 Git 服務(wù),適用于個(gè)人開發(fā)者、小團(tuán)隊(duì)和企業(yè),幫助用戶高效管理和協(xié)作開發(fā)軟件項(xiàng)目。
2、Gitea與其他版本控制系統(tǒng)的比較(GitLab, GitHub等)
Gitea、GitLab 和 GitHub 都是流行的版本控制系統(tǒng),它們在某些方面有所不同。
1. 功能特點(diǎn):
Gitea:輕量級的 Git 服務(wù),提供基本的代碼托管、問題跟蹤、團(tuán)隊(duì)協(xié)作等功能,適合個(gè)人開發(fā)者和小團(tuán)隊(duì)使用。GitLab:功能豐富的全面開源平臺,提供了包括代碼托管、CI/CD、問題跟蹤、Wiki 等在內(nèi)的一系列功能,適合中小型企業(yè)和大型團(tuán)隊(duì)使用。GitHub:全球最大的代碼托管平臺,提供了強(qiáng)大的社交功能和廣泛的集成,是開源社區(qū)、個(gè)人開發(fā)者和企業(yè)最受歡迎的版本控制系統(tǒng)之一。
2. 部署方式:
Gitea:輕量級、易于部署,可以在個(gè)人服務(wù)器上快速搭建。GitLab:功能豐富,部署和配置相對復(fù)雜,適合需要定制化和擴(kuò)展性的場景。GitHub:作為托管服務(wù),無需用戶自行部署,但提供了企業(yè)版 GitHub Enterprise,可以在私有環(huán)境中部署。
3. 擴(kuò)展性:
Gitea:作為輕量級的 Git 服務(wù),擴(kuò)展性較有限,但支持豐富的插件和自定義配置。GitLab:提供了豐富的集成和擴(kuò)展功能,可以滿足不同規(guī)模和需求的團(tuán)隊(duì)。GitHub:提供了大量的集成和第三方應(yīng)用,但定制化程度相對較低。
4. 社區(qū)支持:
Gitea:作為一個(gè)相對較新的項(xiàng)目,社區(qū)規(guī)模相對較小,但活躍度不斷增加。GitLab:擁有龐大的社區(qū)支持和活躍的開發(fā)者社區(qū),提供了豐富的文檔和支持資源。GitHub:擁有龐大的開發(fā)者社區(qū)和全球范圍的用戶基礎(chǔ),是開源社區(qū)的首選平臺之一。
5. 商業(yè)化支持:
Gitea:目前主要由社區(qū)貢獻(xiàn)者維護(hù),沒有官方的商業(yè)支持。GitLab:提供了企業(yè)版和托管服務(wù) GitLab.com,以及專業(yè)的技術(shù)支持和咨詢服務(wù)。GitHub:作為微軟旗下的產(chǎn)品,提供了企業(yè)版 GitHub Enterprise 和 GitHub Actions 等商業(yè)化服務(wù)。
?
三、在Centos上安裝Gitea
1、安裝Mysql數(shù)據(jù)庫
在使用 Gitea 前,我們需要準(zhǔn)備一個(gè)數(shù)據(jù)庫。Gitea 支持 PostgreSQL(>=10)、MySQL(>=5.7)、SQLite 和 MSSQL(>=2008R2 SP3)這幾種數(shù)據(jù)庫。
在Centos上安裝MySQL
[root@gitea ~]# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
[root@gitea ~]# rpm -ivh mysql-community-release-el7-5.noarch.rpm
[root@gitea ~]# yum install mysql-server -y
修改屬主屬組
[root@gitea ~]# chown mysql:mysql -R /var/lib/mysql
初始化數(shù)據(jù)庫
[root@gitea ~]# mysqld --initialize
啟動(dòng)數(shù)據(jù)庫
[root@gitea ~]# systemctl start mysqld
設(shè)置root密碼
[root@gitea ~]# mysqladmin -u root password "111111"
登錄數(shù)據(jù)庫
[root@gitea ~]# mysql -uroot -p111111
?設(shè)置使用新的加密算法
mysql> SET old_passwords=0;
創(chuàng)建了一個(gè)名為 'gitea' 的用戶,并將其密碼設(shè)置為 'gitea'。
mysql> CREATE USER 'gitea' IDENTIFIED BY 'gitea';
添加權(quán)限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'gitea'@'localhost' IDENTIFIED BY 'gitea' WITH GRANT OPTION;
使用 UTF-8 字符集和排序規(guī)則創(chuàng)建數(shù)據(jù)庫
mysql> CREATE DATABASE giteadb CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci';
設(shè)置權(quán)限
mysql> GRANT ALL PRIVILEGES ON giteadb.* TO 'gitea';
mysql> FLUSH PRIVILEGES;
mysql> exit
2、二進(jìn)制安裝Gitea
下載二進(jìn)制包《gitea-1.21.4-linux-amd64》
添加執(zhí)行權(quán)限
[root@gitea ~]# chmod +x gitea-1.21.4-linux-amd64
安裝git
[root@gitea ~]# yum install git -y
#添加用戶
[root@gitea ~]# adduser \
> --system \
> --shell /bin/bash \
> --comment 'Git Version Control' \
> --gid git \
> --home-dir /home/git \
> --create-home \
> git
#創(chuàng)建工作路徑
[root@gitea ~]# mkdir -p /var/lib/gitea/{custom,data,log}
[root@gitea ~]# chown -R git:git /var/lib/gitea/
[root@gitea ~]# chmod -R 750 /var/lib/gitea/
[root@gitea ~]# mkdir /etc/gitea
[root@gitea ~]# chown root:git /etc/gitea
[root@gitea ~]# chmod 770 /etc/gitea
#配置Gitea工作路徑
[root@gitea ~]# export GITEA_WORK_DIR=/var/lib/gitea/
#復(fù)制二進(jìn)制文件到全局位置
[root@gitea ~]# cp gitea-1.21.4-linux-amd64 /usr/local/bin/gitea
啟動(dòng)Gitea
gitea不允許使用root用戶運(yùn)行,所以要先將用戶切換為我們剛剛創(chuàng)建的普通用戶,不然運(yùn)行的時(shí)候會報(bào)錯(cuò)
[root@gitea gitea]# su git
[git@gitea gitea]$ GITEA_WORK_DIR=/var/lib/gitea/ /usr/local/bin/gitea web -c /etc/gitea/app.ini
出現(xiàn)如下界面則說明啟動(dòng)成功
3、配置Gitea?
在瀏覽器輸入IP地址+3000端口,訪問Gitea的Web界面
在配置頁面,添加我們剛剛創(chuàng)建的數(shù)據(jù)庫信息
然后點(diǎn)擊立即安裝
四、Gitea的使用與操作
1、創(chuàng)建倉庫
進(jìn)入到首頁后,點(diǎn)擊右上角,創(chuàng)建一個(gè)新賬戶,然后再點(diǎn)擊右上角的加號新建一個(gè)倉庫
2、代碼提交?
在安裝了git bash的電腦上操作,這里我們以go語言為例
打開goland,打開終端進(jìn)入到項(xiàng)目路徑下,在終端輸入
git init
git checkout -b main
git add README.md
git commit -m "first commit"
git remote add origin http://192.168.40.133:3000/liming/test.git
git push -u origin main
即可將本地代碼推送至Gitea
3、Gitea Bash 常用命令
進(jìn)入 Gitea 安裝目錄:
cd /path/to/gitea
啟動(dòng) Gitea 服務(wù):
./gitea web
創(chuàng)建一個(gè)新的 Gitea 倉庫:
./gitea repo create
克隆一個(gè)已存在的 Gitea 倉庫:
git clone http://
添加一個(gè) Gitea 倉庫遠(yuǎn)程地址:
git remote add origin http://
推送本地代碼到 Gitea 倉庫:
git push -u origin master
拉取 Gitea 倉庫最新代碼到本地:
git pull origin master
查看 Gitea 倉庫狀態(tài):
git status
???每一次的分享都是一次成長的旅程,感謝您的陪伴和關(guān)注。希望這些關(guān)于Gitea的文章能陪伴您走過技術(shù)的一段旅程,共同見證成長和進(jìn)步!???
裡裡裡讓我們一起在技術(shù)的海洋中探索前行,共同書寫美好的未來!??!
柚子快報(bào)激活碼778899分享:運(yùn)維 Gitea的簡單介紹
推薦文章
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。