github搭建服务器 git服务器有哪些

GitLab搭建个人(或公司)版本控制系统

说明:Git,Github,GitLab三者关系。

Git-是一款自由和开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。是 Linus Torvalds为了帮助管理 Linux内核开发而开发的一个开放源码的版本控制软件。(svn是集中化的版本控制系统)。

GitHub-是一个面向开源及私有软件项目的托管平台(也就一个网站),提供给用户空间创建git仓储,保存用户的一些数据文档或者代码等。它可以托管各种git库,并提供一个web界面。被戏称为“全世界最大的同性交流社区”。

GitLab-基于Git的项目管理软件。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

当然啦国内开源中国出的“码云”,第一次听得人还以为是“马云”。我酱紫。它跟Github功能差不多,都能建立公有和私有的仓库。不过嘛感觉有点封闭,社区没有Github热闹。

有的人就说啦,我完全可以在Github或者GitLab上做远端代码仓库,为啥还要倒腾GitLab自建代码托管系统?就一个字:“代码安全性”(公司保密规定)。对于公司来说,GitLab让开发团队对他们的代码仓库拥有更多的控制,相比于GitHub,它有不少的特色:

一、自建代码托管系统都需要做些什么工作?

1.选择开源软件

Git大家族的 GitLab,它提供了完善的用户权限管理,除了涵盖 Git所有的功能,同时又提供方便的后台管理。分别有CE(社区版)、EE(企业版)、OM(RPM包完整版)三个版本,目前市面上开发者们的普遍选择是使用 CE版的源码,成本较低且相对方便。

2.硬件设施方面

如果是对于中小型企业来讲,自建机房一般成本较高,所以除非是大型集团企业。现在市面上存在太多的云服务器厂商,平均价格多在 5000元/年以上,都是不错的选择。

可能遇到的坑:

3.由于个人眼界以及信息不对称,目前大部分公司都是在公司局域网内自行用GitLab搭建代码托管系统。部署Gitlab是对服务器有配置要求的建议是CPU两核,内存4G以上。个人经验,勿喷啦。

二、搭建过程(这里仅是作者接触的,其实还有很多更高级的盘法)

Gitlab的服务构成

1.搭建方法分为:传统方式安装GitLab和Docker安装(推荐)。

2.传统安装过程(平台使用centos7安装)

安装和配置必要的依赖项:

安装Postfix以发送通知邮件:

在安装Postfix期间,可能会出现配置屏幕。选择“Internet Site”并按enter键。使用您的服务器的外部DNS以“mail name”并按enter。如果出现额外的屏幕,继续按enter键接受默认值。

添加GitLab镜像源并安装gitlab服务器:

注意这里设置的端口不能被占用,默认是8080端口,如果8080已经使用,请自定义其它端口,并在防火墙设置开放相对应得端口。

重置并启动GitLab:

访问 GitLab页面:如果没有域名,直接输入服务器ip和指定端口进行访问

获取/修改超级管理员root的密码:

最后我们使用默认的账号:root和刚刚设置好的密码12345678进行登录。

后面的步骤配置SSH key,git Bash的global config等初始化设置跟GitHub一样。可是还有一点就是“汉化”。(英文不好的小伙伴)但是有一定风险,后面我打开报502错误。有两种方法:用git比对出英文与中文的补丁,将英文打补丁。第二是直接下载中文版,替换英文。

3.Docker安装(推荐)

(1)配置docker镜像

直接从 docker hub获取的话速度非常慢,所以需要配置一个镜像。我使用的是 daocloud.io提供的加速器,速度很快。

(2)获取 GitLab镜像

下载完成后,查看镜像列表

(3)启动容器

3个--publish指定容器与主机的端口映射,分别是 http、https、ssh

3个--volume指定数据卷的映射,分别是 gitlab的配置、日志、数据

(4)配置外部访问 URL

修改 gitlab配置文件:

找到 external_url这一项修改为自己服务器的访问地址:

保存后,重启容器

(5)访问

初次访问时,gitlab要求我们重置管理员密码,修改完成后登录。默认用户root。

当然以上为个人实验,公司里面大部分为CTO等大佬已经搭建完毕,我们主要是折腾。

最后推荐个人用很顺手的工具: SourceTree(可视化界面的Git),当然啦要想成为大牛或者装13也好,还是从Git Bash里敲命令行。

hexo+github博客搭建与备份教程(详细篇)

来自肥宅的小乐趣,带你玩转hexo自建博客,生活还是需要装一下的嘛:)。

官网:

关于hexo,如官网的一句话介绍,

正如上面的介绍,hexo会在本地生成一个静态html页面,为了让别人看到我们的博客,我们就需要将其推到远端--服务器。

那么github就提供给我们一个免费的仓库,对于新人练手是再好不过了。当然,也可以购买属于自己的域名,让更多的朋友看到你的博客。话不多说,让我们开始吧!(作者使用的是mac os系统,其他系统也类似)

mac用户推荐使用 Homebrew

笔者安装的版本为v12.6.0

安装hexo需要依赖node.js的 npm的包管理器,由于国内镜像源速度很慢,为了避免出错,所以在使用之前一般是利用 npm来安装 cnpm, cnpm为淘宝的镜像源。

至此,我们hexo的博客搭建初步完成了。 INFO Start blogging with Hexo!

若不存在,请进行下一步(存在,请跳过创建步骤)

输入后按回车,然后会提示输入密码,可以按回车设为空。之后SSH就生成了,下图所示:

4.检验SSH Key

执行yes,若出现下例,则表示配置成功。

5.设置用户信息

6.本地博客部署至Github

终端 myblog目录下,使用 vim打开 _config.yml,

滑动至最底部,如图,编辑 deploy节点,

type: git

repo: git@github.com:codehory/codehory.github.io.git

branch: master

注:1.冒号后有空格 2. repo一行为新建仓库的SSH地址,打开新建仓库就能看见

输入完毕,按 esc,:wq保存退出。

7.安装部署插件

在 myblog目录下,

8. Deploy to Github

至此,恭喜,完成全部部署,在网址栏输入: yourusername.github.io就能看到你的初步博客啦!( yourusername为你github用户名)

在 myblog目录下,新建一篇博客,

在本地博客的 source->_posts路径下看到新建的文章,是md格式的,使用markdown文本编辑器进行编辑即可。

编辑完成之后,执行以下命令,即可更新博文,

为了继续满足我们深入骨髓的DIY之心,换一个自己喜欢的主题也是必不可少的环节。Github上有很多眼花缭乱的主题,去选一个自己喜欢的吧!

本文例程使用的是:

在 myblog目录下,用 vim打开 _config.yml,

可以修改 title,subtitle,description,keywords,author等内容,这些属性依赖于你选择的主题。

输入完毕,按 esc,:wq保存退出。

menu用来设置你博客的分类,标签等。

subnav为你的社交媒体的链接,如github,微博等。

用github当图床

头像更换:在 myblog目录下的 source文件下创建 img文件,将图片保存在其中。我们通过部署生成,把图片放到 github上,通过链接找到。

例如:本文将一张 timg.jpeg的图片存放到 myblog/source/img/下,那么我们可以通过之前生成的链接,如 ,进行图片的插入。

还有许多诸如此类的设置,各自进去修改吧,同样的操作,保存退出。

最后来看看我们的博客吧,还不错吧:

由于博客是在本地生成的,如果更换电脑,那我们是不是就不能用这个博客了?方法总比问题多,我们可以利用 github来备份博客的文件和数据。

第一次备份完毕,以后的备份,只需进行如下操作:

这样备份完毕后,我们在另一台电脑上,只需 git clone一下就行了。

说长不长,说短不短,一通操作下来,不知你是否成功了呢?作者只是抛砖引玉,带你入门,之后的进阶过程,还望各位继续探索,玩转hexo。欢迎在评论区展示下你们的成果咯,让作者也学习学习,哈哈。同样,如若有任何纰漏或者相关问题,请在评论区留言吧!感谢各位观看!See you~

linux怎么搭建git服务器

GitHub就是一个免费托管开源代码的远程仓库。但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。

搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装。

假设你已经有sudo权限的用户账号,下面,正式开始安装。

第一步,安装git:

$ sudo apt-get install git

第二步,创建一个git用户,用来运行git服务:

$ sudo adduser git

第三步,创建证书登录:

收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。

第四步,初始化Git仓库:

先选定一个目录作为Git仓库,假定是/srv/sample.git,在/srv目录下输入命令:

$ sudo git init--bare sample.git

Git就会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。然后,把owner改为git:

$ sudo chown-R git:git sample.git

第五步,禁用shell登录:

出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:

git:x:1001:1001:,,,:/home/git:/bin/bash

改为:

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。

第六步,克隆远程仓库:

现在,可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:

$ git clone git@server:/srv/sample.git

Cloning into'sample'...

warning: You appear to have cloned an empty repository.

剩下的推送就简单了。

阅读剩余
THE END