一、Git简介
1.1 Git介绍
Git是一个开源的分布式版本控制系统,能够高效地管理大或小的项目。Git最初是由Linux开发者Linus用了仅仅两周时间纯C语言编写而成的,是目前为止最好用的分布式版本控制系统,不用服务器端软件控制,例如github用的就是git系统来管理他们的网站。
注意:github是社区,而git是一个服务系统。 很多不了解的同学可能将其混杂。
1.2分布式与集中式
- 集中式:版本库放在中央服务器中,集中式每次写代码时需要先从中央服务器得到一份,写完再将新的上传,它的工作需要联网才能工作,并且当中央服务器出现问题,那所有的文件都面临丢失。
- 分布式:每个人的电脑都作为服务器,随时可以将自己在工作时做的修改提交到本地仓库,最后只需要将本地仓库推动到远程版本仓库合并即可,工作时不需要联网,因为版本都在自己的电脑上,丢失的概率较小。
二、Git的使用
2.1 配置git环境
初次使用git需要设置用户名及邮箱,由于git是分布式版本控制系统,所以每个分支都要有名字和邮箱,可以通过--global
设置这个分支上所有仓库都使用该配置。
在命令行输入:
git config --global user.name "Name"
git config --global user.email "email@qq.com"
可以通过git config --list
来查看已有的配置,或用git config
查看某项配置。config
用于配置git环境。
在命令行输入 :
git config --list
git config user.name
2.2 git的执行过程
首先需要了解git中的工作区、版本库、暂存区
- 工作区:电脑里看到的目录
- 版本库:又叫仓库,工作区隐藏目录.git,是实际上git的本地版本仓库,在仓库中每个文件的修改、删除都能追踪到,便于之后追踪历史修改或还原。
- 暂存区:在.git下起索引作用的部分
文件在工作区进行修改或新增,执行git add后更新暂存区目录,并将该文件对象的ID记录在暂存区,执行git commit时暂存区目录被提交到版本库。我们通常将需要修改并提交的文件都放到暂存区,然后一次性提交所有暂存区的修改。
2.3 创建空仓库
在命令行输入:
创建目录text
mkdir D:/text
进入目录
``
cd D:/text
初始化当前仓库,将目录变为git可以管理的仓库
git init
至此我们创建了一个空的仓库
2.4 将文件提交到版本库
将文件提交到版本库有两个过程
add
将文件添加到暂存区commit
提交到版本库2.4.1 创建新文件
利用touch
命令新建一个文件,并用vim
编辑文件
touch test.txt
vim test.txt
按i
进入编辑状态,输入后用Esc
退出编辑,输入:wq
后回车保存并退出
2.4.2 提交至暂存区
利用add
命令添加到暂存区
git add test.txt
2.4.3 提交至本地仓库
利用commit
添加到版本库
git commit -m "new file test.txt"
此时-m
后面引号中的内容是本次提交的记录,可以简要描述我们做了什么,这样从历史记录中就能知道每次改动的内容,在团队开发中需要写记录,否则其他成员很难知道你修改的内容。同时,记录需要简洁高效,冗长的解释在查看历史记录时很难阅读