![be4c6b1370bb2402035fce3c6f3070a1.png](https://i-blog.csdnimg.cn/blog_migrate/d9aa72a01def09fc452e68fe5d876d5f.jpeg)
以前使用Gitlab搭建过Git服务,如果服务器配置低的话启动和访问都会特别慢。最近发现了Gogs这个开源项目,安装方便,特别轻量级,推荐给大家!
SpringBoot实战电商项目mall(40k+star)地址:https://github.com/macrozheng/mall
Gogs简介
Gogs是一款极易搭建的自助Git服务,使用Go语言开发,只要Go语言支持的平台它都支持,包括Linux、Mac OS X、Windows以及ARM平台。Gogs对系统硬件要求极低,你甚至可以在树莓派上搭建它。
项目地址:https://github.com/gogs/gogs
安装
Gogs在Docker环境下的安装非常简单,只需要两个命令即可,推荐使用该方式来进行安装。
- 首先我们需要先下载Gogs的Docker镜像;
docker pull gogs/gogs
- 下载完成后使用
docker run
命令即可运行服务;
docker run -p 10022:22 -p 10080:3000 --name=gogs
-v /mydata/gogs:/data
-d gogs/gogs
- 这里我们说下命令中值得注意的地方,
10022
对应的是Gogs的SSH服务端口,10080
对应的使用Gogs的HTTP服务端口,我们还将容器的数据目录挂载到了宿主机的/mydata/gogs
目录下,这样就算我们重新创建容器数据也不会丢失。
配置
- 安装完成后,我们第一次访问Gogs服务会显示一个设置页面,访问地址:http://192.168.5.19:10080/
- 数据库设置,这里我们直接使用内置的
SQLite3
数据库即可,使用其他的需要自行搭建数据库;
![08c8e6faad4c6e7916fda3e55d57d7e7.png](https://i-blog.csdnimg.cn/blog_migrate/c8b553a5d3ee849e9cdf526039df4a36.png)
- 应用基本设置,主要修改域名、SSH端口号和应用URL即可。
![a7b321efe0e855204a8a711165d67f43.png](https://i-blog.csdnimg.cn/blog_migrate/f9dc1fdd0f38456cee4001387dd81c1a.jpeg)
使用
注册
- 配置好以后会直接跳转到登录界面,首先注册一个帐户;
![6e2faab1527863c4915c0daa8f97c814.png](https://i-blog.csdnimg.cn/blog_migrate/b71e6ac4a14d087e5627346eb4c2b87b.png)
- 注册完成后,登录即可进入控制面板页面。
![101595c4115eb8d3b1fd1313988e4536.png](https://i-blog.csdnimg.cn/blog_migrate/ceb4873642051c0e1635a426ef3f4bf2.png)
创建仓库
- 直接使用我的仓库右侧的加号即可创建仓库,简单设置下仓库名称和可见性来完成创建;
![1d6738a5674da49b4249dfbb7ba991f1.png](https://i-blog.csdnimg.cn/blog_migrate/908d930be14a8dff01b9b4e64aa0c29a.jpeg)
- 创建成功后直接使用克隆地址即可克隆该仓库;
![ad47eafb3990aa8e6c3cd66b4cf66343.png](https://i-blog.csdnimg.cn/blog_migrate/18f0c52d85b778215c33315e9bbe1af0.jpeg)
- 我们可以直接使用IDEA的Git检出功能;
![76165718c7dfe1b05be9f025d208f1b5.png](https://i-blog.csdnimg.cn/blog_migrate/36099e7216c575c8dd3a32c41d0d2e8d.jpeg)
- 检出完成后,加入我们的代码直接提交、推送,在Gogs里面就可以看到我们提交的代码了。
![c975111f5f9bcbbdf9c5591479561e64.png](https://i-blog.csdnimg.cn/blog_migrate/594937c1eaf590ba6f4048d42f97d77c.jpeg)
工单管理
- 这里的工单管理,有点类似Github上面的Issue的功能,我们可以通过
创建工单
按钮来创建;
![f37ba676b5d55ede2b3dc1c57fc5cb10.png](https://i-blog.csdnimg.cn/blog_migrate/00b273bf71e0361c5c4a60a3a83acbd7.png)
- 输入我们的标题、内容和标签以后即可创建;
![eb0d884566a99b2dbb922290e660b29d.png](https://i-blog.csdnimg.cn/blog_migrate/330ca449e4c37ac6753dbb8797bea0fa.jpeg)
- 创建完成后显示效果如下。
![e26369a1b8ce7d17b811a5fd60da47e0.png](https://i-blog.csdnimg.cn/blog_migrate/b24c1b6ecfbdc6a9a171667026126067.jpeg)
添加用户
- 有时候管理员需要新建一些帐户来协作开发,此时我们只要点击
头像->管理面板->用户管理
即可打开用户管理界面;
![40539d31042c2551f548fab385ab49b2.png](https://i-blog.csdnimg.cn/blog_migrate/065e75b1c5ab140a0cc77303b8073b62.jpeg)
- 然后点击
创建新的帐户
,输入相关信息即可完成创建。
![116165366e1d033250823f72b4cb911e.png](https://i-blog.csdnimg.cn/blog_migrate/6f6462d7d70e963974b2591156e9c095.jpeg)
管理协作者
- 创建完成后,我们可以在仓库页面的
仓库设置
中打开管理协作者
功能;
![e1cba27985967fe5b2a90c28b27a3e10.png](https://i-blog.csdnimg.cn/blog_migrate/af7d4f1d1bc632c57048e01ecbdbbcbd.jpeg)
- 之后通过输入协作者账户,点击
增加新的协作者
并设置好权限即可,这样协作者就可以访问并向该仓库提交代码了。
![fcdc8c9a11912bad5831a58903508753.png](https://i-blog.csdnimg.cn/blog_migrate/295e9a014e93085614a615609975c01e.jpeg)
迁移外部仓库
- Gogs还提供了从外部仓库迁移代码的功能,通过头像左侧的加号,然后选择
迁移外部仓库
即可;
![ad9e7911546770500e41b543b341b6af.png](https://i-blog.csdnimg.cn/blog_migrate/f9b094cdd450dd90c6d6aa97834155d5.jpeg)
- 这里以迁移Gitee上的
mall
项目为例,项目地址:http://gitee.com/macrozheng/mall
![20abd28d6515c3c0e62dfbbba1549d63.png](https://i-blog.csdnimg.cn/blog_migrate/57d5195222709d3ef49c6d7e3b20782e.png)
- 迁移成功后就可以在Gogs里面看到
mall
项目了!
![9341c666601bf68124ae7608f30a5d5a.png](https://i-blog.csdnimg.cn/blog_migrate/e52c1eb10d6bb8fea23eecc0801fb53e.jpeg)
Gogs VS Gitlab
之前有写过一篇《10分钟搭建自己的Git仓库》,使用的是Gitlab,下面对比下Gogs和Gitlab在安装使用过程中的优缺点,仅代表个人观点。
![992ac96b9d322bca06be165cce123a85.png](https://i-blog.csdnimg.cn/blog_migrate/2b04ac6d998b1ddeed81a81864944790.png)
本文 GitHub https:// github.com/macrozheng/m all-learning 已经收录,欢迎大家Star。