Git是一个开源的分布式版本控制系统,可以有效、高效的处理从很小到非常大的项目版本管理。使得开发者可以通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库,也可以将代码提交到Git服务器上。

一、环境

  VMware创建ubuntu虚拟机作为Git服务器,而客户端在windows系统下搭建。

二、ubuntu搭建Git服务器

  1、安装 openssh

  命令:sudo apt-get install openssh-server

  

  2、安装完成之后,查看ssh服务是否启动

  命令:ps -e|grep ssh

  

  3、创建git用户,用来管理运行git服务

  命令:useradd git/adduser git

  注意:useradd命令并不会在/home目录下创建用户文件夹,而adduser会创建

  

  4、安装git

  命令:sudo apt-get install git-core

  

  注意:sudo执行会报错

  

  解决办法:进入root (su),添加文件的写权限(chmod u+w /etc/sudoers),编辑/etc/sudoers文件(vi /etc/sudoers,加入git  ALL=(ALL)  ALL),然后保存退出即可。

  5、初始化服务器端Git仓库

  命令:git init --bare /home/git/myRep.git

  

三、windows搭建Git客户端

  1、去Git官网下载(默认选项安装)

  https://git-scm.com/downloads

  2、安装完成之后,在桌面右击会出现“Git GUI Here”和“Git Bash Here”或者在开始菜单有Git快捷方式,点击Git Bash Here,出现命令框

  】        

  3、在windows客户端配置无密码SSH登录

  命令:ssh-keygen -t rsa

  生成密钥,在windons用户下/.ssh文件夹下

  

  将生成的公钥id_rsa.pub拷贝到ubuntu服务器上

  在ubuntu服务器上创建.ssh文件夹并进入目录创建authorized_keys文件,创建完成后将公钥内容追加到此文件中

  命令:mkdir .ssh

     touch authorized_keys

     cat id_rsa.pub >> /home/git/.ssh/authorized_keys

  

四、测试

  1、在ubuntu服务器上创建一个空文件夹/home/git/GitServer作为git仓库

  2、使用git init初始化这个git仓库

  

  创建完成之后会发现在GitServer目录下多了一个.git目录(使用ls -a查看):

  

  此时,在git仓库的目录下写一个readme.txt

  

  3、使用git add命令将其添加到git仓库,然后使用git comment命令提交到仓库中

  

  注意:此命令都是在认证身份后执行的

  

  4、在windows的Git Bash中使用git clone从git仓库中拷贝项目文件(ubuntu服务区IP:192.168.1.102)

  命令:Git clone git@192.168.1.102:/home/git/GitServer

  

  5、拷贝结果:

  

  

   

  自此一个简单的Git版本控制服务器就搭建完成了,后续博主还会持续更新关于Git更详细的内容!!!

  

  

Git版本控制之ubuntu搭建Git服务器的更多相关文章

  1. ubuntu搭建svn服务器并htpp访问版本库并svn与web同步

    Ubuntu搭建SVN服务器多版本库 1  介绍   Subversion是一个自由,开源的版本控制系统,这个版本库就像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况.这样就可 ...

  2. Ubuntu搭建Anki服务器

    Ubuntu搭建Anki服务器 第一步安装Anki 阿里云的服务器,xshell远程登录上 #以root用户进行操作 #安装Akni服务 easy_install AnkiServer #添加名为an ...

  3. Ubuntu搭建NFS服务器,NFS协议详细分析

    目录 1. Ubuntu搭建NFS服务器 2. NFS协议分析 2.1 实验拓扑: 2.2 在kali抓包分析 1. Ubuntu搭建NFS服务器 ​ NFS(Network FileSystem,网 ...

  4. Ubuntu 搭建Web服务器(MySQL+PHP+Apache)详细教程

    Ubuntu 搭建Web服务器(MySQL+PHP+Apache)详细教程 看了好多人的博客,有的不全 or 有问题,整理了一下,适合小白 新手先整理几个小问题 1.为啥使用 Linux 搭建服务器? ...

  5. Ubuntu 搭建 LAMP 服务器

    /******************************************************************** * Ubuntu 搭建 LAMP 服务器 * 说明: * 想 ...

  6. Linux Ubuntu搭建git服务器

    1. 安装 openssh-server ,用于创建SSH服务. sudo apt-get install openssl-server 使用命令ps -e|grep ssh,查看ssh服务是否启动. ...

  7. 自定义Git之使用centos搭建git 服务器

    Github 公开的项目是免费的,但是如果你不想让其他人看到你的项目就需要收费. 这时我们就需要自己搭建一台Git服务器作为私有仓库使用. 接下来我们将以 Centos 为例搭建 Git 服务器. 1 ...

  8. git基本使用(搭建Git服务器)

    我操作的是阿里的云服务器Linux系统的.系统不一样可能指令也不一样: 简要说明: git是分布式版本控制系统,也就是说每个开发人员的本地库和远程的库都是一样的. 基本思路: 1.在远程服务器上的一个 ...

  9. Ubuntu搭建Gitlab服务器

    想到Gitlab就必定会想到SVN,因为两者都是代码管理系统,作为开发人员来说,用习惯了SVN的图形化界面和SVN代码更新和提交的方式, 可能就会觉得使用git会比较麻烦,其实不然git使用起来非常方 ...

随机推荐

  1. VS Code配置Go语言开发环境

    VS Code是微软开源的一款编辑器,插件系统十分的丰富.本文就介绍了如何使用VS Code搭建Go语言开发环境. VS Code配置Go语言开发环境 说在前面的话,Go语言是采用UTF8编码的,理论 ...

  2. 024 实例5-身体质量指数BMI

    目录 一."身体质量指数BMI"问题分析 1.1 身体质量指数BMI 1.2 问题需求 二."身体质量指数BMI"实例讲解 2.1 身体质量指标BMI 2.1. ...

  3. FreeSql (二十七)将已写好的 SQL 语句,与实体类映射进行二次查询

    有时候,我们希望将写好的 sql 语句,甚至是存储过程进行查询,虽然效率不高(有时候并不是效率至上). 巧用AsTable var sql = fsql.Select<UserX>() . ...

  4. Jsp学习笔记(4)——分页查询

    核心sql i是第几页,itemNum是每页显示的数据条数 select * from ( select e.*,rownum rn from ( select * from employee whe ...

  5. Android数据列表展示之 RecylerView

    一.概述 1.RecyclerView是什么? RecyclerView是一种新的视图组,目标是为任何基于适配器的视图提供相似的渲染方式.该控件用于在有限的窗口中展示大量数据集,它被作为ListVie ...

  6. 疑难杂症----windows7

    这两天换了台win7的机器,每次开机发现时间日期没法更新,第一次手动更新后过了一天以后又恢复成20xx/01/01,头疼ing,网上找了好多办法,在这里记录一下,避免以后再碰到同样的问题. 出现这个问 ...

  7. TensorFlow2.0(1):基本数据结构—张量

    1 引言 TensorFlow2.0版本已经发布,虽然不是正式版,但预览版都发布了,正式版还会远吗?相比于1.X,2.0版的TensorFlow修改的不是一点半点,这些修改极大的弥补了1.X版本的反人 ...

  8. FEDay会后-Serverless与云开发,可能是前端的下一站

    进化本身是生物体与环境之间持续不断的信息交换的具体表现. -- 摘自<信息简史> 很荣幸在9月21号成都举办的第五届FEDay上作为讲师为大家分享腾讯云在近两年推出的云开发相关的技术和知识 ...

  9. BeanFactory not initialized or already closed

    产生这个错误有两个可能, 一.你没有配置初始化文件,在web.xml中配置如下 <context-param> <param-name>contextConfigLocatio ...

  10. 括号匹配(c语言实现)

    ⭐ 我的网站: www.mengyingjie.com ⭐ 1要求 编写程序检查该字符串的括号是否成对出现,而且不能交叉出现. 输入: 一个字符串,里边可能包含"()"." ...