Git 基础使用

Git操作文件的时候手贱了,怎么恢复? 我们在使用git的过程当中很难避免的一点就是手贱,因为人嘛总有犯错疏忽的时候,有时候一不小心就操作错了。我也经常遇到这种情况,所以这时候对git的了解和掌握就非常重要,即使操作错了,我们也可以通过git还原到我们希望它变成的状态。下面我们来看几个例子,来实际体验一下git的强大。 不小心add错了 这是一个非常非常容易出现的问题,我自己也经常遇到。有时候编译出了二进制文件,明明知道是不应该添加进git管理的。因为添加进来之后会使得整个repo变得非常大,别人clone和pull都非常费劲。而且前面也说过了, 阅读详情

初始化命令 git init

初始化 git 仓库,不解释

工作区、暂存区和版本库

  • 工作区:就是你在电脑里能看到的目录。
  • 暂存区:英文叫 stage 或 index。一般存放在 .git 目录下的 index 文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
  • 版本库:工作区有一个隐藏目录 .git,这个不算工作区,而是 Git 的版本库。

git add 命令 添加暂存区

git add -A:将文件的修改,文件的删除,文件的新建,添加到暂存区。 

git add -u:将文件的修改、文件的删除,添加到暂存区;

git add .:将文件的修改,文件的新建,添加到暂存区。

git add * :将当前目录下所有文件添加到暂存区,包括文件的修改,文件的新建。

其中,add * 和 add -A 区别在于,git add * 会忽略.gitignore 把任何文件都加入。add -A 不忽略

git commit -m ‘xxx’ 命令

将暂存器内容提交到版本库

git atatus 命令

用于显示工作目录和暂存区的状态

git log 命令

查看历史提交记录

git reflog 命令

git reflog命令可以查看所有分支的所有操作记录信息

包括已经被删除的 commit 记录和 reset 的操作

常用于查看被删除的版本哈希值,用于恢复

git reset 命令

命令用于回退版本,可以指定退回某一次提交的版本。

git reset HEAD^            # 回退所有内容到上一个版本 
git reset HEAD^ hello.php  # 回退 hello.php 文件的版本到上一个版本 
git  reset  052e           # 回退到指定版本

其中 HEAD 表示当前版本,HEAD^ 表示上一个版本,HEAD^^ 表示上上一个版本。

默认回退到暂存区,如果需要回退到工作区使用 git reset --hard HEAD

git diff 命令

git diff 命令用于比较文件,用法较多,列出一些比较实用的:

当工作区有改动,临时区为空,git diff 的对比是工作区与最后一次commit提交的仓库的共同文件

当工作区有改动,临时区不为空,git diff 对比的是工作区与暂存区的共同文件

 git diff HEAD:工作区与版本库之间的差异

git diff <分支名1> <分支名2> :比较两个分支上最后 commit 的内容的差别

 git diff branch1 branch2 --stat    显示出所有有差异的文件(不详细,没有对比内容)

git checkout 命令 (丢弃撤销文件用法)

git checkout . 丢弃工作区的修改,使得回到最后一次 git commit 或者 git add 的状态

git checkout -- file 同理

git checkout -f        丢弃暂存区和工作区的所有文件

git rm 命令

删除文件,并且删除直接后直接进暂存区。如果像删除一个文件并且提交到库中需要:

$ git rm test.txt
rm 'test.txt'

$ git commit -m "remove test.txt"
[master d46f35e] remove test.txt
 1 file changed, 1 deletion(-)
 delete mode 100644 test.txt

无需使用 git add

git remote 命令

命令用于在远程仓库的操作

git remote add origin git@github.com/xxxxxx 表示添加一个远程仓库,其中origin 只是仓库的本地别名,也可以换成别的名字。

对于一个 git 目录来说,可以同时连接多个远程仓库,此刻就需要给他们不同的别名。

git remote -v 查看当前已经连接到仓库

git remote rm name 删除远程仓库

git remote rename old_name new_name 修改仓库名

git push 命令

git push -u origin “master” 向 git 服务器推送代码

其中 -u 为这个命令添加一个别名,以后使用 git push 就是和 git push origin “master” 一样的效果

管理分支系列操作命令

下面来说一下分支创建,合并,解决冲突等有关分支的操作。

git checkout 命令

git checkout dev 切换到 dev 分支

git checkout -b dev 创建一个名为 dev 的分支,并且切换到该分支

当然 checkout 命令也可以切换分支

git switch 命令

们注意到切换分支使用git checkout <branch>,而前面讲过的撤销修改则是git checkout -- <file>,同一个命令,有两种作用,确实有点令人迷惑。

git 提供了 switch 命令独立出这个操作

git switch -c dev 创建并切换分支

git switch 切换分支 

git branch 命令

git branch 查看当前分支

git branch -d 查看 删除分支

get merge 命令

git merge dev 使当前分支与 dev 分支合并

Git学习总结—— (Git基础、Github、Git分支) 一、起步 (一)关于版本控制 1.文件的版本 2.版本控制软件 版本控制软件是一个用来记录文件变化,以便将来查阅特定版本修订情况的系统,因此有时也叫做“版本控制系统” 通俗的理解:把手工管理文件版本的方式,改为由软件管理文件的版本;这个负责管理文件版本的软件,叫做“版本控制软件” 3.使用版本控制软件的好处 操作简便:只需识记几组简单的终端命令,即可快速上手常见的版本控制软件 易于对比:基于版本控制软件提供的功能,能够方便地比较文件的变化细节,从而查找出导致问题的原因 **易于回溯:**可以将选定的文件 阅读详情

相关推荐

从零开始的计网学习——物理层

计算机网络对于IT人不论是就业还是升学都是核心的一门课程,一起从零开始,学习计算机网络!

Nimrod__的博客 2万+

“git add -A”和“git add”之间的区别。

git add [--all | -A] 和 git add . 有什么区别?

HuntsBot的博客 5406

提升RAG效果:为何 JSON 格式远胜 Markdown?

在构建强大的 RAG (检索增强生成) 系统时,文档解析是至关重要的第一步。它直接影响着后续的检索效率和生成质量。在众多文档格式中,JSON (JavaScript Object Notation) 格式正逐渐展现出其相对于传统 Markdown 格式的巨大优势。本文将深入探讨 JSON 在 RAG 系统文档解析中的卓越之处,并结合具体案例,让你理解为何 JSON 才是构建下一代智能应用的更优选择。RAG 系统的核心目标是让模型能够利用外部知识库,生成更精准、更贴合实际的答案。

simoncool23的博客 2718

git add 命令 及 -u/-A/./*四者的区别

目录 一、前言 二、基本 三、git add -u 四、git add -A 五、git add -i 5.1、revert子命令 5.2、update子命令 5.3、add untracked子命令 5.4、diff子命令 5.5、status子命令 5.6、quit子命令 六、帮助 区别: git add -u:将文件的修改、文件的删除,添加到暂存区; git add .:将文件的修改,文件的新建,添加到暂存区。 git add -A:将文件的修改,文件的删除...

qq_27898413的博客 7623

基于FPGA低频方波测量-频率与占空比

基于FPGA低频方波测量-频率与占空比

DRAXY的博客 6733

SAP交货单过账避坑指南:序列号处理、Buffer清理与BAPI提交回滚的那些事儿

本文深入解析SAP交货单过账中的序列号处理、Buffer清理与BAPI提交回滚等关键问题,提供WS_DELIVERY_UPDATE和BAPI_OUTB_DELIVERY_CONFIRM_DEC的实战优化方案。通过详细的技术分析和最佳实践,帮助开发者避免常见陷阱,提升交货单处理的稳定性和效率。

weixin_31155097的博客 432

git add -A /git add -u/git add .的用法

git的指令详解 在git中有好多的指令,但是今天这几个指令就很容易忘记而且还容易混淆 git add -u <==> git add –update 提交所有被删除和修改的文件到数据暂存区git add ./* 提交所有修改的和新建的数据暂存区git add -A <==>git add –all 提交所有被删除、被替换、被修改和新增的文件到数据暂存区这几个挺麻烦了,总是不知道怎么搞

dayewandou的博客 4万+

360加固DEX解密与ELF修复技术解析

本文深入解析了360加固APK的逆向分析技术,重点探讨了其DEX解密与ELF文件修复的核心流程。通过动态调试与Frida脚本,详细拆解了壳的启动机制、反调试绕过、自实现Linker技术,并还原了基于RC4和自定义算法的多层DEX解密过程,为移动安全研究人员提供了实用的实战分析思路。

alice7model的博客 704

“git add -A”和“git add .”的区别

这个命令会将所有已经被版本控制的文件(即跟踪文件)的改动添加到暂存区,同时也会将新文件(即未被跟踪的文件)添加到暂存区。简单来说,它的作用范围包括所有已跟踪文件的修改和新文件。:这个命令只会添加当前目录下的所有文件(包括子目录中的文件)的改动到暂存区,但不会添加全新的文件。也就是说,它只关心已经存在于仓库中的文件的变化,而不会自动包含新文件。“git add -A”更加全面,既包括了对已有文件的修改也包括了新文件;而“git add .”则仅针对已有文件的最新变动。

liluo0815481的博客 496

第10篇:Agent + 爬虫 = 全自动数据采集专家

在企业级数据采集场景中,传统爬虫的痛点已经到了无法忽视的地步:而Agent + 爬虫的组合,就是这些痛点的终极解决方案。它的核心逻辑是:把爬虫从「人工写死的固定执行脚本」,升级为「能自主分析、自主决策、自主适配、自主修复的智能采集机器人」。我们在生产环境中做过对比测试:传统爬虫开发10个网站的采集脚本需要3人天,而Agent采集机器人只需要3分钟,页面改版后的修复成本从1人天降到了0,采集任务的成功率从62%提升到了95%以上。终端执行以下命令,安装基础依赖,与前9篇环境完全兼容: 二、核心能力拆解:Age

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1577

软件测试面试题之易错题

(1)白盒测试:又称功能功能 测试、数据驱动测试和行为测试,是一种从用户观点出发的测试,被测程序为黑盒子, 通过测试来检测每个功能是否能够正常使用。(2)黑盒测试:又称结构测试和逻辑驱动 测试,是知道产品内部工作过程,通过测试来检测产品内部动作是否按照规格说明书 的规定去正常运行。(1)、测试需求分析;(2)动态白盒测试:需要对各个模块功能、模块间的接口、局部数据结构、主要执行路径、 错误处理等方面的测试。(2) 集成测试所测试的对象是模块间的接口,其目的是在找出在模块接口上面,包括整体体系结构上的问题;

m0_37449634的博客 679

git的使用——初步认识git和基础操作

本文介绍了Git版本控制工具的基本概念与原理。首先通过文件修改的示例说明了版本控制的必要性,指出手动复制管理版本的低效性。接着阐述了Git的核心功能:通过记录文件变化而非完整副本实现高效版本管理,支持版本回溯和修改备注。文章对比了集中式(如SVN)和分布式版本控制的差异,强调Git的去中心化优势。同时澄清了Git与GitHub/Gitee的关系,指出后者是基于Git的代码托管平台。最后简述了Git的开发历史,并提供了在Gitee创建仓库的简要步骤。全文旨在帮助读者建立对Git版本控制系统的基础认知。

2301_79705195的博客 1869

Vibe Coding 工具实战案例全解:Cursor、Claude Code、Codex 真实项目 30 分钟到 4 小时快速构建指南(2026 年最新)

2026年VibeCoding工具实战案例精选:1)使用Cursor在30分钟内构建现代TodoList应用(Next.js+TS+Tailwind);2)通过ClaudeCode纯终端2小时开发3D飞行射击游戏(Three.js+R3F);3)利用OpenAICodex多Agent并行4小时完成SaaS全栈开发(Next.js+Supabase+Stripe)。案例均来自真实项目,覆盖从入门到生产级开发,重点展示:自然语言Prompt技巧、迭代反馈方法、工具特性对比(Cursor可视化最佳/Claude推

hy行者勇哥的博客 3185

【Git】之Git使用基础

下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。 Workspace:工作区 Index / Stage: 暂存区 Repository: 仓库区(或本地仓库) Remote:远程仓库 1、首先需要安装Git,下一步下一步就行,这里就不说了。值得一提的是,如果Git安装成功,当你在某个文件夹下点击鼠标右键的时候,弹出的菜单中会有一项是Git Bash Here,点击这一项就可以弹...

定格空间 266

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Git基础使用

如果在方括号中使用短划线分隔两个字符, 表示所有在这两个字符范围内的都可以匹配(比如 [0-9] 表示匹配所有 0 到 9 的数字)指的是对已提交的文件的修改,然后撤销,撤销以后,可以将它还原成上次提交时的样子。(手动移除文件后,运行 git rm <文件名> 记录移除,在下次提交时,文件就不纳入版本管理了)[abc] 匹配任何一个列在方括号中的字符 (比如匹配一个 a,或匹配一个 b,或匹配一个 c)要从Git中移除某个文件,就必须要从已跟踪文件清单中移除(确切地说,是从暂存区移除),然后提交。

博客 1601

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

git 的基础使用

这份笔记整理了 Git 基础核心操作,涵盖配置、日常开发、版本管理等关键场景,适合初学者直接对照使用。

2301_80241833的博客 1122

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Git使用总结

Git是什么... 3 Git使用... 3 下载安装... 3 git本地仓库管理(基础)... 4 设置本地账户信息git config --global. 4 创建本地仓库 git init 4 提交代码版本,进行管理 git commit/add. 5 查看文件变化情况与提交记录... 6 git diff 6 git status. 7 git log. 8 还原代...

lishanxin1991的博客 912

Git基础使用教程

Git是一个分布式版本控制系统,用于高效管理项目版本。本文介绍了Git的基本概念、安装配置、核心工作原理及常用操作命令。主要内容包括:Windows系统安装Git客户端;Git工作区、暂存区和版本库的工作原理;创建仓库、提交修改、查看历史记录等基础操作;分支管理、标签操作等高级功能;以及.gitignore文件的配置语法。文章还详细讲解了如何将本地仓库与GitHub远程仓库关联,并提供了完整的Git命令速查表,涵盖仓库创建、提交、分支管理、远程操作等日常开发所需的核心命令,帮助开发者快速掌握Git版本控制技

ZHW1202的博客 1226

【Git】git的简单使用

reset到commit1,reset的内容被放入本地仓(commit1的内容覆盖本地仓),而暂存区中依然是commit3的内容。hard:reset到commit1,reset的内容被放入工作区(即commit1的内容不仅覆盖了本地仓和暂存区,还覆盖了工作区的内容)main.c的内容直接被commit1的修改覆盖。reset到commit1,reset的内容被放入暂存区(commit1的内容覆盖本地仓和暂存区),而工作区中依然是commit3的内容。提交一次,表示引入了某个子模块。

张壮壮的博客 1539

GIT基础命令使用

GIT基础命令使用、远程仓库、上传下载、克隆

weixin_44144773的博客 1327

git使用

前言 之前项目里一直都是用svn进行代码的版本控制,自己对svn仓库的搭建以及svn的使用还是挺熟练的,但是git作为一个更牛逼的版本控制工具,而且互联网上很多具有开源精神的大神也在github上托管了自己的代码,还是很值得我学习使用一下的,这里会记录自己学习使用git的一些心得,会持续的更新 入门 我系统的是ubuntu12.04 desktop,默认情况下,ubuntu中没有安装

小一的专栏 1万+

Git 基础使用教程

git 基本使用教程

学习是一件容易的事情,难得是坚持学习 974

Git详解之二:Git基础

有时候我们提交完了才发现漏掉了几个文件没有加,或者提交信息写错了。此命令将使用当前的暂存区域快照提交。如果刚才提交完没有作任何改动,直接运行此命令的话,相当于有机会重新编辑提交说明,但将要提交的文件快照和之前的一样。启动文本编辑器后,会看到上次提交时的说明,编辑它确认没问题后保存退出,就会使用新的提交说明覆盖刚才失误的提交。上面的三条命令最终只是产生一个提交,第二个提交命令修正了第一个的提交内容。

多媒体开发者 1229

GIT的基础使用

这篇文章介绍了Git的常用操作命令,主要包括分支管理和远程同步功能。在分支操作部分,详细说明了查看、创建、删除、重命名本地和远程分支的方法。对于远程仓库操作,重点讲解了git fetch和git pull的区别与用法:git fetch用于获取远程更新但不自动合并,可通过FETCH_HEAD查看更新;git pull则是fetch和merge两个操作的结合,能自动合并远程分支到当前分支。文章还列举了常见命令选项的解释,为Git基础使用者提供了实用的操作参考。

weixin_46787654的博客 479
上一篇: Linux 笔记 进程监测 进程管理
下一篇: arduino 笔记【1】 模拟IO与数字IO区别
崔佳宇_
崔佳宇_ 优质创作者: 嵌入式与硬件开发技术领域 优质创作者: 嵌入式与硬件开发技术领域
博客等级 码龄10年 1万+粉丝 173原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值