首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Git开发教程 二 —— Git切换项目版本】

上篇文章介绍了关于本地库一些基本操作,如:初始化、添加、提交等等,本篇文章将介绍如何使用Git切换项目版本。...查看提交历史 在进行版本切换之前,我们需要了解一个指令: git log 该指令能够查看提交历史,执行该指令,结果如下: 前面我们进行两次提交,通过该指令就都显示出来了,包括提交作者标识,...为了后续测试,这里我再进行一次修改,然后提交查看提交历史其它指令 使用git log指令虽然可以显示提交历史,但是显示得过于详细有时候也并不方便,当提交次数逐渐增多时,这样显然会加重我们查找某些重要信息负担...假设有一个项目提交了很多次,此时想要回退到之前版本,当你回退之后,其它查看提交历史指令是无法看到当前版本之前历史git reflog可以。...基于~符号进行版本切换 使用^符号虽然也能够实现版本切换,但我若是想回退几十个版本,那指令后面就得跟着几十个^符号,这显然不是一个好选择,这时候就可以使用~符号。

1.1K10
您找到你想要的搜索结果了吗?
是的
没有找到

【干货分享】通过命令操作来学习Git

使用git log查看刚才我们已经提交两次内容,如下图所示: ?...git diff——查看更改前后差别 ---- git diff可以查看工作树、暂存区(index)、最新提交(HEAD)之间差别,可以使用该命令实现查看自己在代码中到底修改了一些什么内容,它也是一个非常重要常用命令...由于这个分支进行两次提交,所以在历史记录中就有两次提交记录,但是对于第二次提交,健全历史记录并不需要他们,所以我们希望将这两次提交历史合并成为一次历史,那么使用Git相关命令轻松可以做到。...首先我们查看两次提交历史记录: ?...我们使用命令git rebase -i HEAD~2来将两次提交合并,键入命令之后,会打开编辑器,我们将第二次提交记录前面的pick改成fixup即可,就完成了两次提交记录合并,后面可以通过查看日志来确认一下

49530

轻松掌握Git开发(三)版本切换

上篇文章介绍了关于本地库一些基本操作,如:初始化、添加、提交等等,本篇文章将介绍如何使用Git切换项目版本。...前面我们进行两次提交,通过该指令就都显示出来了,包括提交作者标识,提交时间,提交描述等。仔细观察,会发现这两次提交信息展示不太一样: ?...假设有一个项目提交了很多次,此时想要回退到之前版本,当你回退之后,其它查看提交历史指令是无法看到当前版本之前历史git reflog可以。...基于~符号进行版本切换 使用^符号虽然也能够实现版本切换,但我若是想回退几十个版本,那指令后面就得跟着几十个^符号,这显然不是一个好选择,这时候就可以使用~符号。...文件依然没有变化,我们再执行git status指令查看一下状态: ? 这里又变成红色了, 红色表示未被暂存区追踪,这又该如何理解呢?

38110

轻松掌握Git开发(三)版本切换

上篇文章介绍了关于本地库一些基本操作,如:初始化、添加、提交等等,本篇文章将介绍如何使用Git切换项目版本。...查看提交历史 在进行版本切换之前,我们需要了解一个指令: git log 该指令能够查看提交历史,执行该指令,结果如下: [在这里插入图片描述] 前面我们进行两次提交,通过该指令就都显示出来了,包括提交作者标识...为了后续测试,这里我再进行一次修改,然后提交: [在这里插入图片描述] [在这里插入图片描述] 查看提交历史其它指令 使用git log指令虽然可以显示提交历史,但是显示得过于详细有时候也并不方便,当提交次数逐渐增多时...假设有一个项目提交了很多次,此时想要回退到之前版本,当你回退之后,其它查看提交历史指令是无法看到当前版本之前历史git reflog可以。...基于~符号进行版本切换 使用^符号虽然也能够实现版本切换,但我若是想回退几十个版本,那指令后面就得跟着几十个^符号,这显然不是一个好选择,这时候就可以使用~符号。

59511

Git 基础 git log扩展属性,以及常见commit 内容规范

2. git log 查看提交历史 当我们在使用Git进程多次提交之后,我们如果想回顾一下整个项目的提交历史,那么可以直接使用git log 命令进行查询。...2.1 -p 或 --patch 显示每次提交差异 我们常见是在git log后面添加上-p 或--patch 它会显示每次commit提交时所引入差异(也就是本次提交和仓库最新记录之间差异)。...当我们进行代码审查,或快速浏览某个提交所带来变化时,这个参数就非常有用了。 而我们常见在GitHub上比较两次更新: 就是基于这个命令进行。...2.2 --stat 查看每次提交简略统计信息。 我们使用-p时候显示内容太详细了,只需要知道修改了多少文件等那么就可以使用--stat进行统计了。...--name-status 显示新增,修改,删除文件清单 --abbrev-commit 仅显示SHA-1校验和所有40个字符中前几个字符 --relative-date 使用相对时间,不是完整格式显示日期

35830

给自己点时间再记记这200条Git命令

image.png 我平时使用 Git 时候,很多 Git 命令我都不是很常用,工作中一般我们会配合一些可视化工具,或者编辑器自带一些插件去维护 Git 仓库,但是我们也要记得一些常用 Git...# 显示两次提交之间差异 $ git diff [first-branch]......# 停止追踪指定文件,但该文件会保留在工作区 $ git rm --cached [file] 分支 管理分支,可以通过下列命令对分支进行增删改查切换等 # 查看所有的分支和远程分支 $ git branch...-m [message] # 提交工作区自上次commit之后变化,直接到仓库区 $ git commit -a # 提交时显示所有diff信息 $ git commit -v # 使用一次新...log -p # 查看最近两次详细修改内容diff $ git log -p -2 #查看提交统计信息 $ git log --stat merge 合并就是将外部提交合并到自己分支中

1.1K20

使用git上传我们故事

这种类型文件有两种去处, 如果它被修改, 变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件 modified:更改,仅仅是修改, 并没有进行其他操作....(add)到可被提交(commit)状态,然后再提交(commit) 通过log查看,就可以看到截止到现在两个操作:create a.py和添加内容01 而且还能看到两次commit修改作者是谁...如果在已经提交错误版本基础上修改,有可能更乱 所以如果修改量不是特别大情况下,我们最好办法是退回到上一个版本 通过log --oneline我们可以查看现在提交情况 此时有三个提交操作 情况一...--amend --no-edit 上面补交之后,修改01对应id发生了变化,其它没有变化 情况二: 如果我们对当前文件进行了修改,然后我们add之后,突然发现还有一些文件没有修改,我们希望退回到...,为了让大家更清晰看到效果,反正都是找的当时id就可以了 上面的reset是可以实现commit和commit之间穿梭 如何实现单个文件之间穿梭,往下看 回到从前(checkout) checkout

27420

mysql默认隔离等级_mysql 四种隔离级别

一个事务执行不能其它事务干扰。即一个事务内部操作及使用数据对其它并发事务是隔离,并发执行各个事务之间不能互相干扰。 4 、持续性。...读取未提交数据,也被称之为脏读(Dirty Read)。 Read Committed(读取提交内容) 这是大多数数据库系统默认隔离级别(但不是MySQL默认)。...幻读(Phantom Read):在一个事务两次查询中数据笔数不一致,例如有一个事务查询了几列(Row)数据,另一个事务却在此时插入了新几列数据,先前事务在接下来查询中,就会发现有几列数据是它先前所没有的...” 经过上面的实验可以得出结论,已提交读隔离级别解决了脏读问题,但是出现了不可重复读问题,即事务A在两次查询数据不一致,因为在两次查询之间事务B更新了一条数据。...,发现数据依然未发生变化,这说明这次可以重复读了 B:插入一条新数据,并提交 A:再次读取数据,发现数据依然未发生变化,虽然可以重复读了,但是却发现读不是最新数据,这就是所谓“幻读” A:提交本次事务

1.2K10

一篇教你Git从入门到精通

# 显示两次提交之间差异 $ git diff [first-branch]......# 停止追踪指定文件,但该文件会保留在工作区 $ git rm --cached [file] 分支 管理分支,可以通过下列命令对分支进行增删改查切换等 # 查看所有的分支和远程分支 $ git branch...-m [message] # 提交工作区自上次commit之后变化,直接到仓库区 $ git commit -a # 提交时显示所有diff信息 $ git commit -v # 使用一次新...commit,替代上一次提交 # 如果代码没有任何新变化,则用来改写上一次commit提交信息 $ git commit --amend -m [message] # 重做上一次commit,并包括指定文件变化...log -p # 查看最近两次详细修改内容diff $ git log -p -2 #查看提交统计信息 $ git log --stat merge 合并就是将外部提交合并到自己分支中

22310

Git Cheat 2

-m [message] # 提交工作区自上次commit之后变化,直接到仓库区 git commit -a # 提交时显示所有diff信息 git commit -v # 使用一次新commit...,替代上一次提交 # 如果代码没有任何新变化,则用来改写上一次commit提交信息 git commit --amend -m [message] # 重做上一次commit,并包括指定文件变化...commit之间差异 git diff HEAD # 显示两次提交之间差异 git diff [first-branch]......[second-branch] # 显示某次提交元数据和内容变化 git show [commit] # 显示某次提交发生变化文件 git show --name-only [commit].../lib # 如果不是查看每个文件详细差别,而是统计一下有哪些文件被改动,有多少行被改 动,就可以使用‘--stat' 参数。

48820

要熟练使用 Git,恐怕要记住这60个命令

一般来说,日常使用只要记住下图中这 6 个命令就可以了,但是熟练使用 Git,恐怕要记住60~100个命令~ 由于公众号文章发布后不能修改,也没办法加个统一目录作为索引页,所以二哥就把《Java...774 个 star)上涨我心里非常开心,希望越来越多 Java 爱好者能因为这个开源项目受益,越来越多人 star,也会激励我继续更新下去~ 在 Git 专题开篇,我就提醒大家一定要记住这几个专用名词...-m [message] # 提交工作区自上次commit之后变化,直接到仓库区 $ git commit -a # 提交时显示所有diff信息 $ git commit -v # 使用一次新...commit,替代上一次提交 # 如果代码没有任何新变化,则用来改写上一次commit提交信息 $ git commit --amend -m [message] # 重做上一次commit,并包括指定文件变化...差异 $ git diff --cached [file] # 显示工作区与当前分支最新commit之间差异 $ git diff HEAD # 显示两次提交之间差异 $ git diff [

63340

MySQL 事务特性和事务隔离级别

,并且多个事务彼此隔离 一个事务内部操作及使用数据,对并发其他事务是隔离,并发执行各个事务之间不会互相干扰 四、持久性(Durability ):一个事务一旦被提交,在数据库中改变就是永久...测试这几个事务并发问题可以通过打开两个终端窗口进行测试 查看事务隔离级别 select @@transaction_isolation; 一、脏读 测试脏读: 将事务隔离级别修改为读未提交 # READ-UNCOMMITTED...在事务 A 中查询一条数据,查询结果中 score 值是 80,然后事务 B 去修改这一条数据,将 score 值改为 90,但是它没有提交,这时候事务 A 去查询这条数据,发现数据竟然发生了变化。...脏读: 在一个事务里面,由于其他事务修改了数据并且没有提交导致前后两次读取数据不一致情况,这种事务并发问题称之为 “脏读” 二、不可重复读 测试不可重复读: 将事务隔离级别修改为读已提交 #...,不是读已提交 隔离性从低到高分别是:读未提交、读已提交、可重复读、可串行化 并发性跟隔离性恰好相反,从低到高是:可串行化、可重复读、读已提交、读未提交 这也非常好理解,隔离性越高,说明锁粒度越细,并发性自然就会降低

54010

您必须知道 Git 分支开发规范,附 Git 常用命令大全!

我们都知道,阿里有 Java 规范,Redis 规范, Git 规范几乎从未被聊起,所以,今天我就说一说 Git 日常分支开发规范。 先说分支命名规范。...提交日志规范:在一个团队协作项目中,开发人员需要经常提交一些代码去修复 bug 或者实现新 feature。项目中文件和实现什么功能、解决什么问题都会渐渐淡忘,最后需要浪费时间去阅读代码。...使用祈使句,是不是很熟悉又陌生一个词,来传送门在此 祈使句 2. 首字母不要大写 3....-m [message] # 提交工作区自上次commit之后变化,直接到仓库区 $ git commit -a # 提交时显示所有diff信息 $ git commit -v # 使用一次新commit...$ git diff HEAD # 显示两次提交之间差异 $ git diff [first-branch]...

69320

2024年java面试准备--mysql(2)

此篇是本人在准备java开发岗位时准备一些关于mysql事务和一些面试需要特别注意地方,还有诸多面试知识点在主页,欢迎大家查看,互相交流学习~~ 第一部分链接 目前只是第二部分后续还会更新mysql...那么,在第一个事务中两次读数据之间,由于第二个事务修改,那么第一个事务两次读到数据可能是不一样。这样就发生了在一个事务内两次读到数据是不一样,因此称为是不可重复读。...在一个事务中前后两次读取结果并不致,导致了不可重复读。 3、幻读:是指当事务不是独立执行时发生一种现象,例如第一个事务对一个表中数据进行了修改,这种修改涉及到表中全部数据行。...第二种方式,使用MVCC解决快照读幻读问题(如简单select),读取不是最新数据。维护一个字段作为version,这样可以控制到每次只能有一个人更新一个版本。...那么第一事务两次读取数据之间,由于第二个事务修改导致一个事务内两次读到数据是不太一样情况,因此称为不可重复读。 幻读: 幻读与不可重复读类似。

15520

MySQL事务 Krains 2020-08-09

# 版本链 对于使用InnoDB存储引擎表来说,它聚簇索引记录中都包含两个必要隐藏列(row_id并不是必要,我们创建表中有主键或者非NULL唯一键时都不会包含row_id列): trx_id...注意max_trx_id并不是m_ids中最大值,事务id是递增分配。比方说现在有id为1,2,3这三个事务,之 后id为3事务提交了。...# 读已提交实现 读时候如何实现? ?...但是当事务a提交时候,会将修改提交,其他事务会看到这些数据变化,会造成不可重复读和幻读。 # 可重复读实现 读时候如何实现? 在第一次读取数据时生成一个ReadView,以后查询都用这个。...间隙锁 为了防止幻读,InnoDB提出了间隙锁,使用索引时候会用到间隙锁,没有使用索引则要对整张表进行加锁。 乐观锁:假设不会发生并发冲突,只是在提交数据时候检查是否数据被修改过。

35220

图解 Git 各种用法,简单明了,一目了然!

命令详解 Diff 有许多种方法查看两次提交之间变动。下面是一些示例。 Commit 提交时,git用暂存区域文件创建一个新提交,并把此时节点设为父节点。然后把当前分支指向新提交节点。...如果想更改一次提交使用 git commit --amend。git会使用与当前提交相同父节点进行一次新提交,旧提交会被取消。 另一个例子是分离HEAD提交,后文讲。...(如果命令中没有指定提交节点,则会从暂存区域中拷贝内容。)注意当前分支不会发生变化。...Rebase 衍合是合并命令另一种选择。合并把两个父分支合并进行一次提交提交历史不是线性。衍合在当前分支上重演另一个分支历史,提交历史是线性。...本质上,这是线性化自动 cherry-pick 上面的命令都在topic分支中进行不是main分支,在main分支上重演,并且把分支指向新节点。注意旧提交没有被引用,将被回收。

36610

Java面试手册:数据库 ③

在MySQL中只有InnoDB或BDB类型数据表支持事务,可以通过show engines查看 在nosql数据库中,事务要求很低, 使用SQL事务原因:保证数据安全有效 事务特性:事务是恢复和并发控制基本单位...一个事务重新执行一个查询,返回一套符合查询条件行,发现这些行因为其他最近提交事务发生了改变。 事务T1读取一条指定WHERE子句所返回结果集。...然后事务T2新插入 一行记录,这行记录恰好可以满足T1所使用查询条件中WHERE 子句条件。然后T1又使用相同查询再次对表进行检索,但是此时却看到了事务T2刚才插入新行。...在一个事务中前后两次读取结果并不致,导致了不可重复。 脏读: 一个事务读取了其另一个未提交并行事务写数据。 事务T1更新了一行记录内容,但是并没有提交所做修改。...不能大量使用:如果大量使用,程序交付后随着用户需求增加,会导致数据结构变化,接着就是系统相关问题,最后如果用户想维护该系统代价是空前 创建存储过程:关键字procedure create

64730

让你Git水平更上一层楼10个小贴士

本篇文章,我们将尝试探索如何更有效管理您时间以及如何充分使用Git提供各种功能。...记住,它是在本地不是你仓库一部分,不会包含在推送(push)和合并中(merge)。 如果我使用git log,我得到提交信息是我仓库一部分。 ?...正如你所看到,我们添加了第一行和第三行忽略了第二行。你可以在之后查看仓库状态 并提交。 ?...你进行了一些修改,而在下一次审核中,又会被要求进行另外修改。你不知道还有多少次修改等着你,在你知道以前,你进行了多次额外提交。理想状态是,你可以使用rebase命令,把他们都合并成一次提交。...你当前工作还没有完成到进行提交地步,而且你在这个阶段也没办法展示你工作(如果不回退所有变化的话)。在这种情况下,git stash可以拯救你。

53550

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券