Linux 系统搭建Git服务器

2017-10-19  本文已影响40人  夜雨GG


1、登录服务器

想操作肯定就得先登上去。好在大苹果就是屌,命令行登录简单的不要不要的

$ ssh root@xxx.xxx.xxx.xxx

'xxx.xxx.xxx.xxx' 就是你服务器的地址
root 是Linux的root 用户的用户名

2、安装git

服务器端使用的是shell 命令,不熟悉的童鞋可以百度一下 常用命令

#yum install -y git

安装完后,查看 Git 版本

[root@iZ252rbhhyiZ ~]# git --version
git version 1.7.1

3、服务器端创建 git 用户,用来管理 Git 服务

 [root@iZ252rbhhyiZ home]# id git
 id: git:无此用户
 [root@iZ252rbhhyiZ home]# useradd git
 [root@iZ252rbhhyiZ home]# passwd git
 [root@iZ252rbhhyiZ home]# id git
 uid=501(git) gid=501(git) groups=501(git)

4、服务器端创建 Git 仓库

这个地方看帖子没转过来:
/home/git目录是git用户的文件目录,
所以作者的git文件都放到这个目录下面了。

~继续:

首先把git目录 owner 修改为 git
然后 切换用户到git 再进到git目录进行操作,这样就不会有权限问题。
用户身份很重要不要搞错

[root@iZ252rbhhyiZ home]# chown -R git:git git
[root@iZ252rbhhyiZ git]# su git
[git@iZ252rbhhyiZ ~]$ cd /home/git

创建iOS文件夹,然后创建gittest.git 仓库文件夹
进入gittest.git 文件夹 初始化Git仓库
这个地方要注意,要在git这个账户下 用--bare 初始化才能正常提交

    [git@iZ252rbhhyiZ git]$ mkdir iOS
    [git@iZ252rbhhyiZ git]$ mkdir iOS/gittest.git
    [git@iZ252rbhhyiZ git]$ cd iOS/gittest.git
    [git@iZ252rbhhyiZ gittest.git]$ git --bare init
    Initialized empty Git repository in /home/git/iOS/gittest.git/

5、clone 远程仓库到本地

同样的本地的Mac电脑必须安装过git 。
想要可视化的用,最好再装一个Sourcetree
怎么装自行度娘吧~

在装有git的Mac本地新开一个命令窗口

屏幕快照 2017-10-19 下午2.18.31.png

首先我们再桌面建一个test文件夹,用来存放clone的项目
进到test文件夹。把项目clone下来,期间输入你之前设置的服务器git账户的密码

$ cd desktop/test
$ git clone git@xxx.xxx.xxx.xxx:/home/git/iOS/gittest.git
Cloning into 'gittest'...

去到桌面打开test看看里面是不是多了一个gittest 文件夹。
这个时候一个空的项目仓库就建好了,也clone成功了。很简单,基本不会出错。

绕的在最后一步的ssh设置!

6、SSH设置

SSH这个是啥东西作者也描述不清楚。重要的是它的功能。
配置完SSH能让你clone和push的时候不用输入密码,一键更新。

大致的效果简单描述一下:

SSH 有公钥和私钥。生成的时候一起生成。
客户端把公钥给服务器,服务器存起来,第一次登录输入密码,
以后就能用ssh自动登录了。

ssh-keygen -t rsa

可以指定生成的文件的文件名,也可以不改,一路回车
最后下图这样客户端ssh生成就成功了。

屏幕快照 2017-10-19 下午5.02.09.png QQ20171019-180109.png

看作者配置了 gitHub 、coding 和作者公司的服务器 一共三个Host
你可以对比第三个来搞

其中:

HostName 是网址 可以是ip 也可以是域名地址
Host 是别名可以跟HostName一样,
要是改了的话你的服务器地址拼法就可以高大上的从这样:
git clone git@xxx.xxx.xxx.xxx:/home/git/iOS/gittest.git
变成这样
git clone git@myHost:/home/git/iOS/gittest.git
User 就是你在服务器的登录名 咱们设置的 是git
IdentityFile 是你放私钥的地址

配置完了就可以 用sourcetree来搞了。

Sourcetree : 新建 从 URL 克隆
输入地址 :
git@xxx.xxx.xxx.xxx:/home/git/iOS/gittest.git
或是:
git clone git@myHost:/home/git/iOS/gittest.git

选个文件存放目录,大公告成!

上一篇 下一篇

猜你喜欢

热点阅读