青海省城乡建设信息官官方网站,珠海网站推广优化,网站网页区别,网站开发python和c 哪个好前言 介绍在工作中使用 git 工具 文章目录 前言一、git 简介1、是什么作用操作3、用途 二、基本概念1、工作区2、暂存区3、版本库4、操作过程 三、基本命令操作 一、git 简介
1、是什么
git 是一个方便管理代码版本的工具#xff0c;用一个树结构来维护和管理所有的历史版本…前言 介绍在工作中使用 git 工具 文章目录 前言一、git 简介1、是什么作用操作3、用途 二、基本概念1、工作区2、暂存区3、版本库4、操作过程 三、基本命令操作 一、git 简介
1、是什么
git 是一个方便管理代码版本的工具用一个树结构来维护和管理所有的历史版本可持久化可存储可支持多人合作
作用
git 用来管理仓库文件夹中所有的文件其中文件中写的是代码
操作
从起点开始起点为初始版本每个节点为一个版本每个节点都可以同时扩展多个分支可以实现不同分支之间相互合并的操作可以实现回滚操作即恢复到某一个历史版本; 3、用途
单人开发项目 回滚历史版本 多人合作开发项目 云平台 存储历史版本相互间同步代码个人每次修改的时候从云端将最新的项目代码拉到本地本地每次开一个新的分支来写写完后再合并一起 二、基本概念
1、工作区
当前的工作目录当前所在的文件夹注意 工作区与分支要区分开工作区只有一个无论在哪个分支都只有一个工作区错误理解每个分支上的每个节点都有一个独立的工作区
2、暂存区
工作区与版本库之间的桥梁
3、版本库
将所有的历史版本通过树结构的形式进行存储Head 指针Head 指针每次只会处于一个历史版本节点 4、操作过程
目的实现将当前工作区的内容存储到版本库中做法 1将当前工作区的内容添加到暂存区每次认为自己写的代码有价值的时候将其存放到暂存区2在版本库中当前 Head 节点后面创建一个新的节点将暂存区中的内容放到新节点中同时 Head 指针会往后移动一位 注意 每次将工作区的内容放到暂存区中时不会创建新的节点将暂存区中的内容存到版本库中时会新创建一个新的节点并将 Head 后移一位Head 指针可以进行分支的切换 三、基本命令操作 登录服务器后先设置自己的名字和邮箱 配置完成后名字和邮箱信息是记录在 .config 文件中 创建项目 本地创建文件夹并进入此时当前文件夹还是普通文件夹将当前所在目录的文件夹配置为一个仓库 仓库的概念仓库的这个概念本质就是一个文件夹执行 git init此时所有信息存放到 .git 文件夹中 git add xxx将当前 xxx文件的修改存到暂存区 git status查看工作区相对于暂存区的修改状态; git commit -m “修改的描述”将暂存区内容提交到当前本地版本分支的当前节点 目的即将暂存区内容持久化执行 commit 时包含的操作 在当前 Head 所指节点的创建下一个新节点并将当前暂存区中的内容存储到新节点中同时 Head 指针指向到新节点的位置并删除当前暂存区中的内容 git diff xxx 比对当前工作区 xxx 文件中的内容与暂存区中 xxx 文件中内容的区别 git restore git restore --staged xxx将 xxx 文件从暂存区中删除git restore xxx对 xxx 文件的进行了修改还没有加到暂存区想删除 xxx 文件中的修改内容恢复到暂存区中存储的版本如果暂存区中没有内容就恢复到 Head 指向的节点的版本 git add . 当修改的文件很多的时候将所有被修改过的文件全部加到暂存区 只有文件状态发生改变的文件才会被添加如果文件没有修改那么它就不会添加到暂存区 查看当前分支中的所有历史版本 概念 当前分支从最初节点状态到当前 Head 指针指向节点的路径只会看当前路径上的所有节点方向是从下往上 操作 git log 只能打印从最初状态j节点到当前 Head 所指向节点上路径的版本信息会显示在多行 git log --prettyoneline将信息显示在一行 打印的是 HEAD 指针走过的所有节点的历史记录可以找到每个节点版本的编号每个节点版本都有一个编号 在当前分支进行节点回滚 概念 回滚历史版本的含义将当前工作目录下所有的被管理的文件文件内容全部恢复到回滚到节点的状态 操作 git reset --hard HEAD^git reset --hard HEAD~100git reset --hard 版本号