Git学习(一)

作者: InnocenceYWQ | 来源:发表于2018-08-17 20:24 被阅读27次

    Git&GitHub

    Git是一款免费、开源的分布式版本控制系统。

    Github是用Git做版本控制的代码托管平台。也就表示这样的代码托管平台可以有很多个,git和github不是一一对应关系。比如,听说过的还有“码云”,等等。

    Git是分布式版本控制系统,就是将同一个Git仓库,分布到不同的电脑上。这样工作时就必须找一台电脑充当服务器仓库的角色,每天24小时开机,其他每个人都从这个服务器仓库中拉取别人的提交,并且各自把各自的提交推送到这个服务器仓库里。但这是很不方便的,如果有个远程的免费的仓库可以使用才是最好的。

    GitHub就是提供Git仓库托管服务的,只要注册一个GitHub账号,就可以免费获得Git远程仓库。也就是有了这个远程仓库之后,一起合作的小伙伴拉取或是提交都是面对这个远程仓库就可以了。


    什么是Git

    Git是目前世界上最先进的分布式版本控制系统(没有之一)。

    什么契机下,产生的版本控制系统:

    • 如果几个同事一起合作编辑一个文件,如果全靠人工的话,就需要保留每个时期,每个人的版本,以便之后查看,修改。还得整理出包含每个改动的最终版,这个最终版只要有人改动,就得找到那个改动的地方,然后更新。总之,整个过程是非常耗费时间和人力的。
      由此需要,产生了版本管理系统,它可以自动帮我们记录每次文件的改动,还可以让同事协作编辑,也不用自己管理一堆类似的文件,也不需要把文件传来传去。
    • 知道了版本控制系统,那什么是分布式呢?
      与分布式对应的是集中式。
      集中式就是将整个文件统一放在特定服务器上,工作的时候先要从这个服务器上获取到最新版本,然后再进行自己的编辑修改,完了再提交到此服务器上。所以如果没有网络,就没法工作了。
    • 分布式是每个人电脑上都有完整版本,没有网络也可以工作,可以同事之间交换修改部分,也可以统一设立中央服务器,然后得到每个人修改的记录。
      先简单这样有个概念,之后再自己实验。

    如何安装Git

    服务器端

    1.先从yum安装git

    yum -y install git
    

    2.在需要的位置创建一个裸仓库(最后以.git结尾)

    cd /usr/local
    mkdir git
    cd git
    git init 
    

    3.创建一个git用户并赋予密码

    useradd git
    passwd git
    

    4.赋予git用户权限

    chown -R git:git  learngit.git
    

    5.禁用git用户shell登录(一定要禁用)

    vi /etc/passwd
    

    将git用户修改为如下(一般在最后一行)

    git:x:1000:1000::/home/git:/usr/bin/git-shell
    

    其他的不用改。服务端完成。


    客户端

    我使用的客户端为git for windows

    • 1.安装,双击下一步,直到完成。

    • 2.进入想要将项目放置的目录

    • 3.创建用户

    git config --global user.name "你的名字"
    git config --global user.email "你的邮箱"
    
    • 4.创建秘钥(用来防止每次commit或push都需要密码)
    ssh-keygen -t rsa -C "你的邮箱"
      一直回车....
    
    • 5.将秘钥加入服务器列表

    • 5.1 取得公钥(本地)

    在当前目录下(若未改变目录,到C:\Users\Administrator.ssh\id_rsa.pub)找到.ssh目录下的id_rsa.pub文件,打开,复制其中内容.

    • 5.2 将公钥加入服务器列表(服务器)
      CentOS 7默认列表在/root/.ssh/authorized_keys,使用vi 编辑此文件输入刚才复制的内容,保存退出。
    vi /root/.ssh/authorized_keys
        //i修改
        //esc后输入:wq保存退出
    
    • 5.3 可以跳过此步,若克隆远程项目多次仍然需要密码,则检查上一步是否有错误,没有错误后,再配置这一步(服务器)

    在/home目录下创建.ssh目录,进入,创建authorized_keys文件

    cd /home
    mkdir .ssh
    cd .ssh
    vi authorized_keys
    加入我们的公钥后保存退出。
    
      1. 克隆项目
    git clone git@101.101.101.101:/usr/local/git/learngit.git
    

    到此,就成功的从服务器上克隆下我们所需要的项目。

    相关文章

      网友评论

        本文标题:Git学习(一)

        本文链接:https://www.haomeiwen.com/subject/chgtiftx.html