欢迎光临
我们一直在努力

TODO:终于还是搭建个人代码管理平台

TODO:终于还是搭建个人代码管理平台

代码管理有VSS,CVS,SVN,GIT;本文不详细介绍各自的不同,小O在工作中用的主要是SVN和Git;SVN的管理还是比较适合国人的使用,使用也比较简单,在前面的文章中也有介绍,小O还是比较喜欢使用Git;最近也在写一些代码,需要用到版本管理,就想用Git搭建代码管理平台.

Git是开源的,在Ubuntu,macOS都已经集成了,安装好系统就可以直接使用git的相关命令,即可进行本地代码控制.

使用gogs搭建Git服务,安装简易,下载二进制运行;跨平台, 任何 Go 语言 支持的平台都可以运行 Gogs,包括 Windows、Mac、Linux 以及 ARM; 轻量级,一个廉价的树莓派的配置足以满足 Gogs 的最低系统硬件要求。有些用户甚至还将 Gogs 运行在 NAS 设备上。

默认系统已经安装好Git,没有可以使用apt-get install git,即可安装

下载gogs二进制包,解压好文件,进入文件夹,运行gogs web即可运行服务,进行配置安装.首先要创建代码管理数据库,数据库类型选择InnoDB,排序选择utf8_general_ci.使用supervisor来守护gogs的进程,创建/var/log/gogs文件夹,守护进程的配置如下:

[program:git_gogs]

command=/data/git/gogs/gogs web

autorestart=true

directory=/data/git/gogs/

stdout_logfile=/var/log/gogs/stdout.log

stdout_logfile_maxbytes=1MB

stdout_logfile_backups=10

stdout_capture_maxbytes=1MB

stderr_logfile=/var/log/gogs/stderr.log

stderr_logfile_maxbytes=1MB

stderr_logfile_backups=10

stderr_capture_maxbytes=1MB

user = git

environment = HOME=”/home/git”, USER=”git”

访问http://域名:3000即可进行安装.安装完成之后进行注册, ID=1 的用户将自动获得管理员权限.

因为服务器只开放了80,443端口,需要Nginx代理,配置Nginx指定到端口3000,并配置了SSL加密.

server

{

listen 443;

server_name git.domainname.com;

index index;

ssl on;

ssl_certificate vhost/ssl/git.domainname.pem;

ssl_certificate_key vhost/ssl/git.domainname.key;

ssl_session_timeout 5m;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

#ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;

#ssl_prefer_server_ciphers on;

location / {

proxy_pass http://127.0.0.1:3000;

}

access_log /data/wwwlogs/git.domainname_access.log ;

}

server {

listen 80;

server_name git.domainname.com;

rewrite ^(.*) https://$server_name$1 permanent;

}

小O把注册关闭了,因为个人使用,服务器的资源有限.

从命令行创建一个新的仓库

touch README.md

git init

git add README.md

git commit -m “first commit”

git remote add origin https://域名/xcx/gjl.git

git push -u origin master

从命令行推送已经创建的仓库

git remote add origin https://域名/xcx/gjl.git

git push -u origin master

这样简单的Git管理平台搭建成功了.

本文是小O的服务器环境进行配置,在不同环境配置略有不同,本文仅供参考,如配置有问题,具体问题具体分析,谢谢支持.


wxgzh:ludong86

qrcode_for_gh_6bb1f39ae99c_258-1

关注婴儿健康成长

防撞条冬季鞋