【Git & GitHub】第一章 —— Git初体验以及版本控制的上手到熟练(2)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 【Git & GitHub】第一章 —— Git初体验以及版本控制的上手到熟练(2)

2.3)Git 的九个基本操作


直接跟着我的操作走一遍,差不多就对Git的基础操作蛮清楚了。


2.3.1)前五个基本操作


微信图片_20221020150959.png

拓展:

此处也可以积累一个关于Linux指令创建文件夹的操作

mkdir GitDemo

微信图片_20221020151104.png

进入该文件夹

cd gitDemo

微信图片_20221020151132.png

① 初始化操作 —— git init


git init


//

这个操作将在此文件夹下创建一个名为的新子目录.git,其中包含所有必要的存储库文件—— 一个 Git存储库骨架。这是Git 能够对该该文件夹进行操作的基础。

微信图片_20221020151220.png

现在手动创建一个文件demo.txt,并在其中编撰一定内容,用于后续的演示。


image.png② 查看状态 git status


git status

学会查看状态其实蛮重要的,因为Git 通过窗口显示的出来的提示可以很好地指导我们进行后续的操作的

微信图片_20221020151525.png

③ 暂存 git add


git add

image.png咱们重新看看状态,看看有没有什么提示喃

微信图片_20221020151615.png那么就老老实实进行提交啦


④ 提交 git commit


提交的指令是这种的

git commit -m"本次提交想要备注的内容,可以使用英语,也可以使用中文"

微信图片_20221020151641.png

假如没有写 -m"需要备注的内容",此时会进入大多数人不太熟悉的Vim编辑窗口了。

微信图片_20221020151714.png

可以参考这位博主的博客了

Git Vim编辑器输入内容、保存和退出操作

image.png命令模式

编辑模式:

微信图片_20221020151814.png

键入:wq表示保存并离开,然后直接回车就可以保存并退出。微信图片_20221020151934.png

⑤ 查看日志 git log


git log

微信图片_20221020152016.png

倘若只是想用版本号(那串很长的哈希值)来锁定到指定的版本,可以使用

git log --pretty=oneline

微信图片_20221020152114.png

拓展:


2.3.2)用上述五个基本操作实现版本控制


① 模拟开发,在原本的版本上进行再次开发


微信图片_20221020152148.png

② 因为内容变更,需重新进行 add 以及 commit


微信图片_20221020152200.png

完成commit微信图片_20221020152227.png

拓展:当查看的日志开太多了,会出现这种无法输入的界面。可以键入q解决

微信图片_20221020152318.png

③ 发现新版本不好用,打算回退到未开发的第一代版本


依旧是模拟开发,此时发现新更新的这个版本不好用,想要回退到第一代的版本,此时想要回退到之前的版本,或者回退到某个指定的版本。


方法一:

git reset --hard 版本号

版本号可以通过git log 和 git reflog查看,然后获得到想要的版本版本号

微信图片_20221020152405.png


实现版本控制

这是在Git Bash 获得的反馈

image.png实际回到demo.txt文件,可以发现,文件确实是被修改过了,回到了自己想要你的版本微信图片_20221020152509.png

 

方法二:


/

git reset --hard HEAD^      线性回退几次,就打几个^

方法二需要理解HEAD指针,结合下方的图理解。

HEAD头指针指向的当前分支最新的版本号。

其具体的实现可以通过这张图俩阐述

微信图片_20221020152550.png

我现在去手动更新两边版本的内容。然后用于演示

拓展:倘若觉得频繁使用 git add 和 git commit -m 有点麻烦,可以考虑使用合并的方式。微信图片_20221020152629.png

将更新版本都提交到Git的版本库中进行管理了

微信图片_20221020152640.png

【演示git reset --hard HEAD^】

image.png【演示git reset --hard HEAD^^】

image.png

这里有个小细节,咱们对比两种版本控制的代码再查看日志的结果:

使用git reset --hard HEAD会修改提交信息

使用git reset --hard 具体版本号不会修改提交信息

image.png

到这里为止的操作,就是切实的结合Git对项目的各个版本进行时时的控制。

剩下的克隆操作、拉取操作、拉取合并操作、推送操作需要结合GitHub或者Gitee来演示会更加生动,那咱们下一篇先着手初步认识这种代码托管平台吧。




4)总结


初始化,查看状态,暂存,提交和查看日志等五个操作,是基础中的基础啦,务必练熟。



相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
18天前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
135 68
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
22天前
|
Devops Shell 网络安全
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
|
2月前
|
测试技术 持续交付 开发工具
Git版本控制在团队协作中具有重要作用
Git版本控制在团队协作中具有重要作用
42 1
|
2月前
|
数据可视化 开发工具 git
如何解决 Git 版本控制系统中冲突的问题?
在Git版本控制系统中,冲突是指在合并或拉取操作时,两个或多个开发者对同一文件的同一部分进行了不同的修改,导致Git无法自动确定应该采用哪种修改。
47 1
|
2月前
|
Ubuntu 开发工具 git
Git高手必备:掌握这些版本控制最佳实践,让你的代码管理效率翻倍!
【10月更文挑战第25天】使用 Git 进行版本控制是现代软件开发的重要部分。本文详细介绍了 Git 的安装、配置、基本操作、分支管理、冲突解决及常用命令,帮助开发者提高工作效率,确保代码质量和团队协作的顺利进行。通过合理使用 Git,可以有效管理代码变更,支持多人协作,并追踪历史记录。
129 4
|
2月前
|
开发工具 C# git
C#一分钟浅谈:Git 版本控制与 GitFlow 工作流
【10月更文挑战第22天】本文介绍了 Git 和 GitFlow 的结合使用,从基础概念到具体操作,涵盖了安装配置、基本命令、GitFlow 工作流的核心分支和流程示例。同时,文章还讨论了常见的问题和易错点,如忽略文件、冲突解决、回退提交和分支命名规范,并提供了代码案例。通过学习本文,读者可以更好地理解和应用 Git 及 GitFlow,提高团队协作效率。
78 1
|
2月前
|
网络安全 开发工具 git
解决fatal:remote error:You can’t push to git://github.com/username/*.g
通过上述诊断与修复步骤,绝大多数的推送错误都能得到有效解决,确保您的Git工作流顺畅无阻。
196 1
|
2月前
|
存储 项目管理 开发工具
掌握Git版本控制,提升团队协作效率
掌握Git版本控制,提升团队协作效率
75 0
|
2月前
|
Linux 网络安全 开发工具
IDEA如何配置git和github
【11月更文挑战第14天】本指南详细介绍了如何在 IntelliJ IDEA 中配置 Git 和 GitHub,包括检查和设置 Git 路径、测试配置,以及通过 SSH 或 HTTPS 方式配置 GitHub 仓库的具体步骤。完成配置后,用户可在 IDEA 中轻松进行版本控制操作。
354 0
|
2月前
|
开发工具 git
掌握Git版本控制,提升团队协作效率
掌握Git版本控制,提升团队协作效率