创建局域网Git服务器

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

内容简介:本文提供的方法适用于小团队在局域网内通过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


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

查看所有标签

猜你喜欢:

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

数据结构

数据结构

殷人昆 / 2012-10 / 43.00元

《清华大学计算机系列教材:数据结构(C语言描述)》共分10章,第1章是介绍数据结构的地位和主要知识点,数据结构和算法的基本概念和算法分析的简单方法,以及C语言编程的要点,第2章~第10章对应考试大纲的6个知识单元,包括线性表、栈、队列和数组、树与二叉树、图、查找、排序,并做了适当延伸。作者在讨论每一个知识单元时,结合30多年教学的经验和考试辅导的体会,合理安排了教材内容,力求透彻、全面。对学生读书......一起来看看 《数据结构》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具