专栏首页CodingToDieGit | Git Server 搭建

Git | Git Server 搭建

系列文章目录


Table of Contents

  • 系列文章目录
  • 前言
  • 操作
  • 1. 创建 git 用户
  • 2. 创建 .ssh 目录
  • 3. 自定义仓库的根目录
  • 4. 在服务器上创建个裸仓库
  • 5. 手动配置一个公钥
  • 6. 在本地测试一下能否操作
  • 总结
  • 参考

前言

平常都是在用 GitHubGitLabGitee 等服务,那我们如何自己搭建一个 Git Server,这里我们搭建一个简单的 Git Server

操作

说明: 本示例在一台云服务器上搭建的 git 服务,其中 1,2,3,4,5 均为在云服务器进行的操作。 当然也可以在虚拟机或者 docker 中进行操作

1. 创建 git 用户

adduser \
   --system \
   --shell /bin/bash \
   --gecos 'Git Version Control' \
   --group \
   --disabled-password \
   --home /home/git \
   git

2. 创建 .ssh 目录

/home# su git
/home# cd git
/home/git# mkdir .ssh && chmod 700 .ssh
/home/git# touch .ssh/authorized_keys && chmod 600 .ssh/authorized_keys

3. 自定义仓库的根目录

/home/git# mkdir code_repository

注意: 这里需要使用 git 用户进行操作

4. 在服务器上创建个裸仓库

/home/git# cd code_repository/
/home/git/code_repository# mkdir abc.git
/home/git/code_repository# cd abc.git/
/home/git/code_repository/abc.git# git init --bare

注意: 这里需要使用 git 用户进行操作

5. 手动配置一个公钥

将我们自己本地的公钥文件加入 /home/git/.ssh/authorized_keys

6. 在本地测试一下能否操作

$ mkdir abc
$ cd abc
$ git init
$ touch README.md
$ git add .
$ git commit -m "first add reademe.md"
$ git remote add origin ssh://git@xxx.xx.xx.xx:/home/git/code_repository/abc.git
$ git push -u origin master

注意: 这里在本机运行的,不是在服务器上

总结

这种方式创建的仓库,并没有设置任何权限,只要在 authorized_keys 的公钥用户就可以对仓库进行读写操作

本文分享自微信公众号 - 双鬼带单(gh_773193545262),作者:张瑀楠

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-09-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 不会吧,有人用了两年Spring, 居然不知道包扫描是怎么实现的

    如果你曾经使用过 Spring, 那你已经配过 包扫描路径吧,那包扫描是怎么实现的呢?让我们自己写个包扫描

    双鬼带单
  • 不会吧,有人用了两年Spring, 居然不知道包扫描是怎么实现的

    <h1> 全栈的自我修养: 0004 Java 包扫描实现和应用(File篇) </h1>

    双鬼带单
  • 算法 | 斐波那契数列

    斐波那契数,通常用 F(n) 表示,形成的序列称为斐波那契数列。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:

    双鬼带单
  • Github 学习与常见问题

    github以前用来搭建过博客,但是不会用git仓库,最近抽时间跳坑,把常见问题总结了下。

    风之小云天
  • redmine整合git做版本管理

    首先从Git上把项目clone下载到安装redmine的服务器上 git clone git@xxx.com/test.git /opt/git-rep/tes...

    zcqshine
  • Git的常用命令

    git clone 命令默认的只会建立master分支,如果你想clone指定的某一远程分支(如:dev)的话,可以如下:

    新人小试
  • Git学习笔记(1) -- 创建和修改项目

    当你设置好gitosis(使用gitosis来配置管理git服务器端)后,就可以使用git来管理你的项目了。

    EltonZheng
  • Git

    九旬
  • Git常用命令

    如果嫌输出信息太多,看得眼花缭乱的,可以试试git log --pretty=oneline

    得野
  • git merge用法

    1、每次发布版本之后,需要打tag。具体步骤是 先把开发分支的代码合并到master,在打tag.

    公众号iOS逆向

扫码关注云+社区

领取腾讯云代金券