【 Git学习记录(一)】Git —— 一款开源的分布式版本控制工具

    科技2024-12-04  16

    文章目录

    一. Git简介二. Git的下载与安装2.1 软件下载2.2 软件安装 三. Git config中配置用户信息四. 本地Git仓库架构五. 远程仓库5.1 远程仓库选型5.2 本地 + 远程仓库架构5.3 远程仓库工作模式 写在最后

    熟悉并掌握Git以及最少一款主流的代码托管平台,无疑是当今每个程序猿的必修课。从今天这一篇博客开始,我会重新系统的整理和归纳以前零散的Git知识。认真记录,喜欢的可以先放进你的收藏夹吃灰呦~

    一. Git简介

    Git是一款开源的分布式版本控制工具。 作者是Linus Torvalds(大名鼎鼎的Linux系统的缔造者),最初用作Linux内核开发的源代码的版本控制。

    由于本身项目的开源,越来越多的开发者参与到了Git的开发中。现在来看,不管你是个人开发,还是企业团队开发,都需要考虑版本控制的问题,那么Git将是你的最优选择。


    🐶 皮一下:大家知道Git这个单词本身是神马意思嘛 ?

    它直译为饭桶,没错,就是你理解的那个饭桶,哈哈。 这歪果仁起名字还真是随意哈?或许这就是来自大神的蔑视吧,听说Linus那哥们写Git只花了两周时间…


    二. Git的下载与安装

    最早Git是只能在Linux和Unix系统上运行,后来逐渐移植到Windows和Mac系统上。这里由于我自己是win10系统,所以就只记录Windows系统下Git的安装与使用了。

    2.1 软件下载

    建议直接去官网:https://git-scm.com/downloads 根据你自己的实际电脑环境(Linux / Win(x32 or x64) / Mac )选择对应版本即可~

    2.2 软件安装

    像这种代码环境工具建议直接闭着眼睛,傻瓜式安装大法(一路选择下一步,默认配置安装即可)。装好了之后可以在cmd中检验一下版本:

    git --version

    而且在任意目录或桌面下,右键菜单都会多出以下两个选项:

    Git GUI Here —— Git的一套图形化管理界面;Git Bash Here —— Git本身的命令行窗口;

    最常用的还是Git Bash,功能类似于Win系统下的cmd和powershell。

    但是他有一个基因层面的优势:基于Linux系统开发,所以Git bash窗口就相当于是Win系统上模拟出来的一个Linux环境窗口。 这意味着它可以执行各种Linux系统的shell内核命令(我们都知道这些平常在cmd上都是执行不了的):

    比如ls,clear等等;后缀为.sh的脚本文件;

    三. Git config中配置用户信息

    Git安装完成后,使用之前首先要告诉你的Git你是谁,相当于在Git中注册一个账号,即在Git config中完成配置用户信息的操作。

    在Git中,有关config的配置又细分为三个级别,每个级别会覆盖前一个级别的值。

    具体请看下表:

    级别命令选项配置文件名称配置文件地址系统级别- - systemgitconfigGit安装地址 \ mingw64 \ etc \ gitconfig全局(用户)级别- - global.gitconfigC:\ Users \ xxx \ .gitconfig本地(仓库)级别- - localconfig具体仓库地址 \ .git \ config

    (注意:未配置全局用户信息或者未使用过Git之前,.gitconfig文件会不存在)

    系统级别的Git config文件(gitconfig)中包含了适用于系统所有用户和所有库的值,属于不常用的默认配置。通常我们配置最多的是后两项:用户级别和仓库级别。

    在开始的入门阶段也只需配置用户级别即可:

    #用户名 $ git config --global user.name 'yourname' #用户邮箱 $ git config --global user.email 'xxx@xxx.com'

    ❀ 拓展一下❀

    如果仅做一些本地的Git仓库操作,这里的用户名邮箱配置上有内容即可,这仅作为你每次提交代码时的标记信息;如果涉及到远程仓库(Github,Gitee等)的操作,这里的配置信息就得和远程仓库的注册信息一致。

    说人话:目前这边建议您瞎填即可,不填还不行哦~🐶


    配置完成后,可通过以下命令来查看Git的所有配置:

    $ git config --list

    或者直接查看用户级别的config文件 —— .gitconfig的内容:

    $ cat ~/.gitconfig

    删除全局配置的命令为:

    git config --global --unset user.name git config --global --unset user.email

    编辑对应级别的config文件的命令为:

    git config --global --edit

    四. 本地Git仓库架构

    我们要明确的是:Git本身是运行在本地的,以一个一个的本地仓库(repository)为工作单位,互不影响。 每个本地仓库的内部架构均如图所示:

    解释一下这里边的几个重要概念:

    本地仓库(repository) // 实质为一个目录文件 ├── 版本库(.git目录) // 仓库初始化后添加的隐藏文件 │ └── 暂存区(stage) // Git的跟踪文件 │ └── master分支 // 最终代码诸多版本的记录所在地 ├── 工作区(workspace) // 实际开发中的项目目录

    一个本地的Git仓库(repository)实质为一个文件夹。 现在我们在桌面上手动创建一个名为Git-demo的文件夹,作为我们的第一个仓库文件。

    双击进入该文件夹,右键打开Git Bash窗口,使用如下命令初始化该文件:

    $ git init

    本地仓库初始化后,出现的.git隐藏文件即为版本库。 其中细分的暂存区和分支我们不需要关心,那属于Git的管理范围。

    之后我们向Git-demo这个仓库文件夹内添加的任何文件都属于是工作区(workspace)的项目文件。

    另外,有关本地仓库具体的Git操作(图中的add和commit操作)讲解请继续看第二节:

    【 Git学习记录(二)】Git中有关本地仓库的基本操作总结(add / commit)

    五. 远程仓库

    在实际的多人协同开发中,每人都在自己的本地仓库维护版本。但很重要的一点是,多人之间需要共享代码、合并代码,此时就需要一个远程仓库。

    5.1 远程仓库选型

    远程仓库的搭建需要依赖于Git服务器,目前Git服务器的选择主要有以下两种:

    个人或公司内部的Git服务器;各大厂商基于Git开发的Git服务器,即代码托管平台。 比如目前主流的GitHub、GitLab、Coding、Gitee等平台。

    有关介绍请看后续(大家可自由选择):

    【 Git学习记录(三)】推荐四款主流的Git代码托管平台 —— GitHub、GitLab、Gitee、Coding

    5.2 本地 + 远程仓库架构

    对于个人来说,如果加上远程仓库这部分,那么一个完整的Git仓库架构图应该是下图酱紫的:

    5.3 远程仓库工作模式

    很多个这样的个人组合起来就构成了一个完整的团队中的远程仓库工作模式。

    有关远程仓库的基本操作(图中的clone / push / pull操作)讲解请继续看:

    【 Git学习记录(四)】GitHub远程仓库中基于HTTPS协议的基本操作总结(clone / push / pull)


    写在最后

    这一篇仅为Git的入门博客,更多的是背景知识的总结和归纳。有关Git的基本操作后续整理完来更新链接。如果觉得我的博客对你的学习有所帮助的话,请点个👍,感谢观看!

    每一个不曾起舞的日子,都是对生命的辜负!

    —— 尼采

    Processed: 0.009, SQL: 8