在MacOS上搭建Git 服务器

创建Git服务器账号

打开【系统设置】中的【用户和组】,加入新用户【git】,该用户主要是提供git服务器的安全和配置环境

图1 加入新用户

配置Git服务器环境

1. 在Terminal中登陆该用户命令如下:

 ssh -l git 127.0.0.1

或使用

su git

2. 配置Git服务器路径

现在可以用 —shared,--bare 选项运行 git init 来建立一个裸仓库,这会初始化一个不包含工作目录的仓库。

     bogon:octopus.git git$ git init —bare --shared

Initialized empty shared Git repository in /Users/git/git.repository/octopus.git/

     bogon:octopus.git git$ ls

HEAD          config          hooks          objects

branches     description     info          refs

3. 配置访问权限

当前笔者默认使用ssh协议(该协议比较简单并且同时支持读写),对于客户端来说,它需要有公钥才能访问ssh服务器,为此需要为【git】用户建立【.ssh】公钥文件夹。

 bogon:// git$ cd ~/.ssh

     bogon:.ssh git$ ls

     authorized_keys

【authorized_keys】该文件用来给用户授权。稍后,咱们在配置用户访问时,会使用该文件。

4. 测试Git服务器

退出该用户终端,使用当前【kuoxin】用户访问Git服务器,命令如下:

 bogon:temp kuoxin$ git clone ssh://[email protected]/Users/git/git.repository/octopus.git

     Cloning into ‘octopus‘...

     The authenticity of host ‘127.0.0.1 (127.0.0.1)‘ can‘t be established.

     RSA key fingerprint is 9e:d6:3e:4f:e5:ec:02:73:8c:3c:58:9b:d6:9b:ab:fc.

     Are you sure you want to continue connecting (yes/no)? yes

     Warning: Permanently added ‘127.0.0.1‘ (RSA) to the list of known hosts.

     Password:

     warning: You appear to have cloned an empty repository.

     Checking connectivity... done.

配置客户单环境

1. 创建客户端公钥

当Git服务器使用ssh协议访问时,如果读写Git服务器的话,就要求有ssh安全访问,因此需要建立该用户的公钥,放入到git服务器(当前为同Mac上的不同账户模拟环境)的【.ssh】目录下,以便服务器上的ssh值守程序可以验证用户读写访问。

     bogon:.ssh kuoxin$ ssh-keygen

Generating public/private rsa key pair.

Enter file in which to save the key (/Users/kuoxin/.ssh/id_rsa): kuoxin_rsa

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in kuoxin_rsa.

Your public key has been saved in kuoxin_rsa.pub.

The key fingerprint is:

36:10:55:aa:9b:5b:0a:0c:b6:71:0f:ac:a7:a2:5e:97 [email protected]

The key‘s randomart image is:

+--[ RSA 2048]----+

|      .....      |

|       . .       |

|      . .        |

|   .   o        |

|  + + . S     |

| . B o.+ .    |

|  o.+E+ .    |

|. .o.. +       |

|+o.   o        |

+-----------------+

    bogon:.ssh kuoxin$ ls

github_rsa     github_rsa.pub     known_hosts     kuoxin_rsa     kuoxin_rsa.pub

2. 配置客户端账号访问

需要将新生成的kuoxin_rsa.pub文件,拷贝到git服务器上的git账号下的【.ssh】目录,并且将开发者的 SSH 公钥添加到的 authorized_keys 文件中。操作如下:

列出当前【kuoxin】开发者账号下的【.ssh】路径下生成的公钥文件

     bogon:.ssh kuoxin$ ls     

github_rsa     github_rsa.pub     known_hosts     kuoxin_rsa     kuoxin_rsa.pub

由于本人使用是同机的不同账户,需要拷贝公钥到/tmp路径下

bogon:.ssh kuoxin$ cp kuoxin_rsa.pub /tmp/

把公钥加入到【git】用户的【.ssh】目录下的authorized_keys文件中,如果希望多个开发者使用该版本库,只需要要把它们逐个追加到 authorized_keys 文件尾部即可,当前就只加入kuoxin用户公钥。

bogon:.ssh git$ cat /tmp/kuoxin_rsa.pub >> authorized_keys 

3.加入源代码工程到Git服务器

   bogon:git.repo kuoxin$ cd octopus 

  bogon:octopus kuoxin$ git init 

  bogon:octopus kuoxin$ git add . 

  bogon:octopus kuoxin$ git commit -m ‘initial commit’ 

  bogon:octopus kuoxin$ git remote add origin ssh://[email protected]/Users/git/git.repository/octopus.git

  bogon:octopus kuoxin$ git push origin master

4.  测试工程

我们使用sourceTree 来测试。

图2 配置远程Git服务器

图3 导出源程序

后话

1. 以上方式主要是适合小规模团队或者个人使用,对于大团队来说,还是请公司的IT来搞定比较好。

2. Git服务器支持多种协议,如http/https, git, local, ssh

3. Git主要是配置用户管理比较复杂,可以使用gitosis。

时间: 2024-11-06 10:01:52

在MacOS上搭建Git 服务器的相关文章

Ubuntu上搭建Git服务器

下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用VMware虚拟机安装两台Ubantu系统,分别命名为gitServer和gitClient_01. 1.安装OpenSSH并配置SSH无密码登陆 通过命令 sudo apt-get install openssh-server,安装SSH服务. 通过命令 ps –e|grep ssh,查看ssh服务是否启动. 通过以上命令,我们为Ubantu系统安装SSH服务,并配置SSH无密码登陆,首先我们修改主机和ip配置文件:gedit /e

如何在服务器上搭建git服务器

参考文章: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000 http://wlog.cn/soft/git-ssh-server-for-debian.html 在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就

自建git服务器连接Pycharm系列二:在centos7上搭建git服务器

在自己的Linux虚拟机上,搭建git服务器,用来保存代码. centos7本身自带git,需要先卸载,安装成较新的版本. 1.卸载系统自带版本 系统已经自带 [[email protected] ~]# git --version git version 1.8.3.1 卸载git [[email protected] ~]# yum remove git [[email protected] ~]# git --version -bash: /usr/bin/git: 没有那个文件或目录 2

android上搭建git服务器-gidder

最近打算搭建个私有git服务器玩玩,弄个VPS成本有点大,想起家里还有个米2S,于是 就去google搜索有木有android上的git server,经过了1个小时的摸索终于在github上发现了这个项目 https://github.com/antoniy/Gidder 经过了半个小时的折腾,终于搞起来了 废话不多讲,我直接上图吧! 因小米 2s 没有电了,这里的截图使用的Z7 MAX 主界面: 基本设置: 创建用户: 创建仓库: 给仓库增加用户并且添加权限: pc安装git客户端:http

手把手教你在 Ubuntu 上搭建 Git 服务器

最近在写一些脚本,为了保持连续性,就在家也抽空赶进度,所以碰到了代码同步的问题,目前想到的方法有三个: 使用云盘,这个拿来即用,但是因为云盘还存放了其他一些东西,总是实时同步不太妥当:使用 SVN,传统的代码托管工具,一直在用:使用 Git,最新的分布式代码托管工具,据说很强大. 最后决定使用 Git,主要是学习下最新的技术.下面是操作步骤,做记录的同时也给其他同学做个指引: 先说下环境: 服务端: Ubuntu 16.04 x64客户端: Windows7 x64 服务端配置 先使用如下命令切

CentOS 6.4 搭建git 服务器

CentOS 6.4 搭建git 服务器 (2013-11-22 19:04:09)转载▼ 标签: it 分类: Linux 此文件是依据markdown所编写,更好效果参见本人github的文档https://github.com/jackliu2013/recipes/blob/master/doc/linux/CentOS_6.4_git服务器搭建.md ##CentOS安装Git服务器 Centos 6.4 + Git 1.8.2.2 + gitosis## 1.查看Linux系统服务器

版本控制——Git 使用笔记,以及Windows搭建Git服务器

Git和Github的关系 链接:http://www.zhihu.com/question/21907548/answer/95284202 来源:知乎 Git是一款免费.开源的分布式版本控制系统 Github是用Git做版本控制的代码托管平台 相当于本地.公司服务器.Github网站服务器都装Git做版本控制,只不过Github的服务器强大些,对全球用户托管的项目用Git做版本控制! 正是由于Github用Git做版本控制,所以可以轻松的记录项目的变迁史,然后有了下图 git是一张弓,git

版本控制-搭建git服务器

GitHub是一个免费托管开源代码的Git服务器,如果我们不想公开项目的源代码,又不想付费使用,那么我们可以自己搭建一台Git服务器. 下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用VMware虚拟机安装两台Ubantu系统,分别命名为gitServer和gitClient_01. 1.安装OpenSSH并配置SSH无密码登陆 通过命令 sudo apt-get install openssh-server,安装SSH服务. 通过命令 ps –e|grep ssh,查看ssh服务

服务器上的 Git - 在服务器上搭建 Git

http://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E5%9C%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E6%90%AD%E5%BB%BA-Git 在服务器上搭建 Git 现在我们将讨论如何在你自己的服务器上搭建 Git 服务来运行这些协议. NOTE 这里我们将要演示在 Linux 服务器上进行一次基本且简化的安装所需的命令与步骤,当然在 Mac