【Git版本控制】Git初识、安装、仓库初始化与仓库配置(含git init、git config与配置无法取消问题)
文章目录
- 什么是版本控制器
- 生活示例——重复修改文件
- 版本控制器的概念
- Git安装
- Linux平台安装
- Git仓库的创建与配置
- git init ——创建本地仓库
- git config ——配置本地仓库
什么是版本控制器
生活示例——重复修改文件
在学习和工作中,我们经常遇到如下情况:
小明的老板让小明做一版活动策划案,小明做了方案v1给老板,老板没有通过,小明在原来的文件上修改后生成v2版本;交给老板后,还是没有通过,小明又在这个基础上修改生成v3,往复多次;在第9版本时,老板说:还是第1个版本好。
此时,小明无能为力,因为他在原来的文件上做的修改,并没有备份。但如果小明在每次修改前,先备份一份,再在原来文档上做修改;那么小明就可以轻松拿到第1个版本的文档了。
但这么多的备份,如果没有加以管理,在文件很多的时候,查找起来也是非常繁琐的;而且我们也无法清晰知道每个版本都修改了那些内容.。
版本控制器的概念
此时,为了更方便地管理不同版本的文件,便有了版本控制器。版本控制器即能记录文件历史及发展变化过程的系统。简而言之,它可以记录文件的每次改动与版本迭代。
对于开发者而言,版本控制器可以很好的管理历史工程代码,可以很方便地回退到之前的版本。同时,版本控制器还支持多人协同作业,这为多人同时开发一个项目提供了便利。
而目前最主流的版本控制器就是Git 。Git 可以控制电脑上所有格式的文件,例如 doc、excel、源代码文件等等。它可以清晰记录文本文件在哪几行发生了变化。但对于视频、图片等二进制文件,它不能跟踪具体变化,只能记录文件大小的变化,如从128KB变为256KB。
Git安装
Git为开源代码托管工具,其最早应用于Linux平台,逐步移植到Windows、Mac等平台。这里我们仅介绍Linux的Ubuntu发行版和Windows安装方式。
Linux平台安装
以Ubuntu22.04.4为例,进入Linux命令行后,可以先输入git
,若结果与下图相同,则系统没有安装git:
git
若系统没有安装git,使用下方命令即可安装:
sudo apt-get install git -y
执行完上述指令后,可以借助下方指令查看git版本,若出现版本号,则说明安装成功:
git --version
Git仓库的创建与配置
git init ——创建本地仓库
若要进行版本控制,则需要一个仓库用于存储历史版本信息。仓库是进行版本控制的一个文件目录,若要对文件进行版本控制,就必须创建一个仓库。
可以通过下方命令创建一个Git本地仓库:
git init
执行完上述命令后,当前目录下多了一个.git
的隐藏文件目录,.git
目录是Git用于跟踪管理的仓库。因而,不可手动修改目录中的任何文件,若发生修改,可能导致Git仓库被破坏,而无法生成使用。
我们可以借助于tree .git
查看Git仓库的诸多细节:
git config ——配置本地仓库
在使用Git时,首先要配置用户名称和email地址,否则可能发生一些错误。配置命令如下:
git config [--global] user.name "jammingpro"
git config [--global] user.email "jammingpro@163.com"# 把"jammingpro"替换为你的用户名称
# 把"jammingpro@163.com"替换为你的邮箱地址
这里的global选项是可选的,若只为当前的仓库配置用户名和邮箱,则不需要加上global选项:
git config user.name "jammingpro"
git config user.email "jammingpro@163.com"
上面的git config -l
可以查看配置信息;没有加上global的配置信息,仅对当前仓库有效,即对gitTest有效,若我们再创建一个目录gitNew,并初始化仓库,查看它的配置信息可以发现,它没有用户名和有效:
回到gitTest目录中,若此时要取消某个配置,可以使用下方指令:
git config --unset [配置名称]
例如,我们取消gitTest仓库的用户名和邮箱配置信息:
git config --unset user.name
git config --unset user.email
若使用--global
选项,则对所有仓库均生效:
git config --global user.name "jammingpro"
git config --global user.email "jammingpro@163.com"
若使用--global
配置的信息,在--unset
取消配置时,也需要带上global选项,否则无法取消配置:
git config --global --unset user.name
git config --global --unset user.email
※ 每天努力一点点,技术变化看得见,欢迎评论交流~