Git入门教程(1)

一、git的理论基础

1.什么是git

git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理

2.git核心框架

在这里插入图片描述
工作区域(Working Directory)就是你平时存放项目代码的地方。

暂存区域(Stage)用于临时存放你的改动,事实上它只是一个文件,保存即将提交的文件列表信息。

Git 仓库(Repository)就是安全存放数据的位置,这里边有你提交的所有版本的数据。其中,HEAD 指向最新放入仓库的版本(确切的说,应该是 Git 仓库中 HEAD 指向的版本)。

3.git工作流程

1) 在工作目录中添加、修改文件;

2) 将需要进行版本管理的文件放入暂存区域;

3)将暂存区域的文件提交到 Git 仓库。

因此,Git 管理的文件有三种状态:已修改(modified)、已暂存(staged)和已提交(committed),依次对应上边的每一个流程。

二、git的操作

Git中,用HEAD表示仓库中的当前版本,用HEAD~表示上一版本,用HEAD~3表示上上上个版本

git命令 对应的执行操作
git init 初始化git
git add README.md 将README.md添加到暂存区域
git commit -m “add a README.md file” 将"add a README.md file"添加到记录
git clone https://github.com/hasura/graphql-engine 将目标网址下的仓库克隆到本地
git status 查看当前命令的状态
git reset HEAD~ 将HEAD移动后指向的上一个快照回滚到暂存区域(即影响了第二和第三棵树)
git checkout 将暂存区域的旧版本覆盖工作目录的新版本(危险操作:相当于丢弃工作目录的修改)
git commit -am “change the LICENSE file” 将工作目录中所有“已跟踪”的文件先 add 到暂存区域,然后再执行 commit 命令
git log 查看历史提交
git reflog 查看历史操作
git reset --soft HEAD~ 只移动HEAD改变仓库,而不改变暂存区。即撤消了上一次的提交(commit),只影响第三棵树
git reset --hard HEAD~ 将HEAD移动后指向的上一个快照回滚到暂存区域,并将暂存区还原到工作目录(即影响了第一,第二和第三棵树)

在这里插入图片描述
我们创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以,现在,git commit就是往master分支上提交更改。可以简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存区的所有修改。

注:用type README.md来查看文件(linux是cat)

猜你喜欢

转载自blog.csdn.net/m0_46162954/article/details/104929749