参考:https://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

https://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E9%85%8D%E7%BD%AE%E6%9C%8D%E5%8A%A1%E5%99%A8

1、在本地创建任意文件夹,mkdir my_project , 切换到my_project,git init

2、切换到my_project 上层目录

  

git clone --bare my_project my_project.git

生成种子项目

3、将种子 放到服务器的 opt/git 目录

scp -r my_project.git git@git.example.com:/opt/git

4、确保 服务器上有 /opt/git 目录:

认识:

  git的远程服务器连接所用的用户名,其实是登录linux的用户名,只不过你可以设置这些用户名只有单一的目录访问权限。

-------------------------------------------------------------------------------------------------------------------------------------------------------简单流程  ↓↓↓ ------------------------------------------------------------------------------------------------------------------------------------------------

1、 添加 git用户

// 此时自动添加 与git同名的分组名称
sudo adduser git

2、将 某个文件夹权限赋予 git分组

// 将git文件夹的所有者赋予 git分组
chgrp -R git /opt/git
// 将git文件夹的权限设置为 分组可修改
chmod 774 git

3、添加可访问权限 (其实不要这一步也可以只不过每次都要输入用户git的密码,将用户的key加入以后就不用输入密码了。直接push)

// 切换到git用户
su git
// 切换到git用户的home
$ cd
// 创建 权限文件
$ mkdir .ssh && chmod 700 .ssh
$ touch .ssh/authorized_keys && chmod 600 .ssh/authorized_keys
// 将用户pub key 加入到 authorized_keys文件中

4、 创建git项目  (一定要用git用户创建)

$ cd /opt/git
$ mkdir project.git
$ cd project.git
$ git init --bare // Initialized empty Git repository in /opt/git/project.git/

5、用户端

git clone git@服务器地址:/opt/git/project.git

last 摸索过程....  

// 删除用户
sudo userdel git
// 创建用户 git
sudo adduser git
// 创建用户组 git_users
// groupadd -g 888 git_users
// 将git加入用户组
// gpasswd -a git git_users
// 修改 /opt/git 的所属分组
// chgrp -R git_users git
// 删除组git_users
// groupdel git_users
// 因为创建用户git的时候git已经被加入了git分组 // 将git文件夹的所有者赋予 git分组
chgrp -R git /opt/git
// 将git文件夹的权限设置为 分组可修改
chmod 774 git
//

git 服务器安装流程的更多相关文章

  1. git工作流程

    git工作流程 一般工作流程如下: 克隆 Git 资源作为工作目录. 在克隆的资源上添加或修改文件. 如果其他人修改了,你可以更新资源. 在提交前查看修改. 提交修改. 在修改完成后,如果发现错误,可 ...

  2. SourceTree 实现 git flow 流程

    为什么使用 git 和 git flow,这篇文章 深入理解学习Git工作流 的内容相信能够给你一个完整的答案. 我们以使用SVN的工作流来使用git有什么不妥? git 方便的branch在哪里,团 ...

  3. 正确的git开发流程

    正确的git开发流程 第一步 在github中创建一个新的仓库,这时候项目是空的,而且只有一个master分支 第二步 第一个开发人员进来了,他在本地创建一个develop分支,并且提交到远程 git ...

  4. [转载]Ubuntu下Git服务器安装与配置

    原文地址:Ubuntu下Git服务器安装与配置作者:F民抄 1. 安装 1.1 安装Git-Core: sudo apt-get install git-core 1.2 安装 Gitosis sud ...

  5. FastAdmin 插件的 Git 开发流程(简明)

    FastAdmin 插件的 Git 开发流程(简明) cms zip 安装 包安装 删除 addons 里的 cms 使用 mklink 软链接到 cms 插件 Git 仓库 修改 cms 插件 gi ...

  6. 漫谈Github与开源,Git介绍以及Git的思想和基本工作原理 Git工作流程

    漫谈Github与开源 文字亮点: 为什么这些优秀的工程师会开源自己的项目? 因为开源是一种精神. 无数的软件开发者苦心积虑保护自己的代码不被破解,而还是被聪明绝顶的脚本小子破解了,但破解无数软件的脚 ...

  7. git 相关流程和报错解决

    git 相关流程: 预先配置: gitroot $ git config user.name XXXgitroot $ git config user.email XXX@XXX.com git re ...

  8. Git-Runoob:Git 工作流程

    ylbtech-Git-Runoob:Git 工作流程 1.返回顶部 1. Git 工作流程 本章节我们将为大家介绍 Git 的工作流程. 一般工作流程如下: 克隆 Git 资源作为工作目录. 在克隆 ...

  9. git 提交流程

    Git提交流程: 1. Menu remote > (拉取)fetch 2. 重新扫描(rescan) 3. 缓存改动(stage change) 4. 写注释后提交(commit) 5. Me ...

随机推荐

  1. for + setTimeout

    一.背景 最近在翻看以前的老书<node.js开发指南>,恰好碰到 for 循环 + setTimeout 的经典例子,于是重新梳理了思路并记录下. 二.写在前面,setTimeout 和 ...

  2. leetcode-algorithms-36 Valid Sudoku

    leetcode-algorithms-36 Valid Sudoku Determine if a 9x9 Sudoku board is valid. Only the filled cells ...

  3. UUID的意义和作用

    UUID介绍: UUID(Universally Unique Identifier)全局唯一标识符,是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的.按照开放软件基金会(OSF) ...

  4. ccf碰撞的小球

    之前的代码有人运行不成功,自己又看了一下是输入变量顺序输入错了,现在是正确答案- #include<stdio.h> struct node{ int x; int dir; }; int ...

  5. Python条件判断和循环,range()函数

    条件判断经常使用if语句进行判断,表达方式为:if 条件语句:      :elif:else if...用于执行第一条不满足if的判断,继续执行其它的判断.比如一个简单的if判断 Python3取消 ...

  6. [NOIP 2014TG D1T3] 飞扬的小鸟

    题目描述 Flappy Bird 是一款风靡一时的休闲手机游戏.玩家需要不断控制点击手机屏幕的频率来调节小鸟的飞行高度,让小鸟顺利通过画面右方的管道缝隙.如果小鸟一不小心撞到了水管或者掉在地上的话,便 ...

  7. dp 入门

    1.HDU 1003 求最长连续相加的和. dp[i]=max(a[i],dp[i-1]+a[i]); dp[i]表示以 i 结尾的最大值. 再开/个strat去标记从哪里开始. #include & ...

  8. OllyDbg安装教程

    1.下载 http://tools.pediy.com/windows/debuggers.htm 我们这里选择OllyDbg1.10下载 2.安装 解压下载的压缩包直接双击启动即可使用 3.插件安装 ...

  9. python(5)之集合

    集合是一个无序的,不重复的数据组合,它的主要作用如下: 1.去重,把一个列表变为集合就自动去重了 2.关系测试,测试两组数据之间的交集.并集.差集等 常用操作如下: #集合的操作 list_1={1, ...

  10. vue-cli webpack全局引入jquery

    1.首先在package.json里加入, dependencies:{ "jquery" : "^2.2.3" } 2.安装依赖 npm install jq ...