创建局域网Git服务器

栏目: 编程工具 · 发布时间: 7年前

内容简介:本文提供的方法适用于小团队在局域网内通过git协同编码。此处省略具体操作步骤。在Linux系统内以管理员权限执行如下命令:

本文提供的方法适用于小团队在局域网内通过git协同编码。

一. 基本步骤

第1步:安装 Linux,安装 Git

此处省略具体操作步骤。

第2步:创建 git 用户

Linux 系统内以管理员权限执行如下命令:

adduser git

此命令执行过程中会提示输入新账户的 登录密码 ,同时自动创建用户主目录 /home/git ,以及执行其他必要的工作。

该用户不一定非叫git,任意合法名称都行,例如 liigogit 等等,当然后续操作命令也要相应地修改。

第3步:创建 git 仓库

使用 git 用户登录系统,在用户主目录 /home/git 内执行如下命令:

git init --bare myrepo.git

该仓库本地目录是 /home/git/myrepo.git ,或者 ~/myrepo.git ,这个毫无疑问。

该仓库 远程目录git@192.168.0.2:/home/git/myrepo.git ,或者是 git@192.168.0.2:~/myrepo.git 。注意其中包含了用户名、IP地址、本地目录等信息;注意符号 @: 都是必不可少的。

本文后面提供其他方法创建仓库,使得远程目录更简洁一点。

第4步:客户端克隆 git 仓库

Git客户端可通过如下命令克隆仓库:

git clone git@192.168.0.2:~/myrepo.git

用户名git已经包含在仓库远程目录内,用户密码就是在第2步创建git用户时设定的那个密码。克隆仓库需要输入密码。

第5步:客户端推送 git 仓库

执行 git push 命令时要求输入密码,就是第2步创建git用户时设定的那个密码。

本方法需要向团队所有成员公开git用户的密码。对小团队而言也无所谓,况且该git用户除了提交仓库也没有其他权限,基本不影响局域网服务器安全。大团队要慎重。

本方法要求每次推送仓库时都输入密码,操作上比较麻烦。

可考虑将团队各成员的公钥写入文件 /home/git/.ssh/authorized_keys ,这样就不需要公开git用户的密码,也不用每次推送都输密码了。(还没研究过,本文暂不涉及此内容。)

团队所有成员共用一个git用户提交代码,还能分清代码是谁写的吗?当然能。Git客户端推送时携带了代码作者的姓名和邮件地址,都能完整的体现在 git log 里面,这个无需担心。

网上有方法禁止git用户登录SSH。我认为这一步是可选的。

二. 更简短的仓库URL

在Linux系统内以管理员权限执行以下命令:

git init --bare /myrepo.git
chown -R git:git /myrepo.git

如此创建的git仓库本地目录为 /myrepo.git ,远程目录为 git@192.168.0.2:/myrepo.git .

当然还可以省掉仓库后缀 .git ,远程目录变成 git@192.168.0.2:/myrepo


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

操作系统基础教程

操作系统基础教程

戴维斯 / 第1版 (2006年7月1日) / 2006-7 / 34.0

这是一本关于操作系统基本原理的教科书,其最大特点就是从操作系统的分层概念出发,深入浅出地介绍了操作系统的基本概念和基本框架。本书可以作为高等院校非计算机专业相关课程的教材或参考书,也适合具有高中以上数学基础的计算机用户自学,还可以作为社会上计算机培训机构的教材。对所有想了解计算机操作系统,但又不需要或不打算深入学习其理论和实现细节的读者来说,本书是一本极具价值的入门指导书。一起来看看 《操作系统基础教程》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器