iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Git有哪些实用技巧
  • 595
分享到

Git有哪些实用技巧

2024-04-02 19:04:59 595人浏览 独家记忆
摘要

本篇内容主要讲解“git有哪些实用技巧”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Git有哪些实用技巧”吧!将几个commit压缩成一个⚠️ 这里有一点要特别

本篇内容主要讲解“git有哪些实用技巧”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Git有哪些实用技巧”吧!

将几个commit压缩成一个

Git有哪些实用技巧

⚠️ 这里有一点要特别注意的是:rebase会导致新的commit节点产生,所以切记不要对多人共用的远端分支进行rebase。

rebase -i 是个很实用且应用广泛的工具,希望大家都学会它的使用。它还可以用来修改commit信息,抛弃某些commit,对commit进行排序等等。具体命令如下,操作方式跟动图一致,都是在vim里面进行编辑。这里不展开,感兴趣的同学可以自己操作一下。

# Commands: # p, pick <commit> = use commit # r, reWord <commit> = use commit, but edit the commit message # e, edit <commit> = use commit, but stop for amending # s, squash <commit> = use commit, but meld into previous commit # f, fixup <commit> = like "squash", but discard this commit's log message # x, exec <command> = run command (the rest of the line) using shell # d, drop <commit> = remove commit # l, label <label> = label current HEAD with a name # t, reset <label> = reset HEAD to a label # m, merge [-C <commit> | -c <commit>] <label> [# <oneline>] # .       create a merge commit using the original merge commit's # .       message (or the oneline, if no original merge commit was # .       specified). Use -c <commit> to reword the commit message.

另外如果要合并的是最近的几个commit,我们还可以用git reset --soft HEAD~3 && git commit -m 'xxx'来实现。对这个有问题的同学可以参照Git内部原理强调的可视化方法思考一下。

找回丢失的commit节点或分支

像上一步rebase后发现不符合预期,如何恢复?不小心删除了一个分支,如何找回?

“学会这个技能,你的同事会请你喝奶茶的,而且说不定还能收获妹子。” &mdash;&mdash; 来自往期课程的某位同学

Git有哪些实用技巧

主要思路为:找到要返回的commit object的哈希值,然后执行git reset恢复

我们知道Git的出现就是为了尽量保证我们的操作不被丢失,在Git内部原理中我们讲过,git object一旦被创建,就不可变更,所以只要找到它对应的哈希值,就能找回。但是ref呢?在Git内部原理中我们也讲过,它是一个可变的指针,比如说你在master中提交了一个commit,那当前的master这个ref就会指向新的commit object的哈希值。reflog 就是将这些可变指针的历史给记录下来,可以理解成 ref的log,也可以理解成 版本控制的版本控制

获得一个干净的工作空间

当我们实验一种思路,或者跟朋友讲代码时,我们可能会随意的修改代码。而当我们回到正常的开发时,我们需要一个干净的工作目录,即保证目前工作目录跟Git最后一次commit的文件是一致的。我们可以怎么做?

Git有哪些实用技巧

尽量少用会丢失文件的操作,除非你能够确定不再需要这些文件。

修改最近一个commit

commit完发现有一些临时的log忘记去掉?有一些文件忘记添加?commit信息出现错别字?

Git有哪些实用技巧

也可以使用 git reset HEAD~,然后执行你需要的修改,再commit即可,同上面介绍的命令效果是相同的。

提交一个文件中的部分修改

Git有哪些实用技巧

Git interactive add 还有很多功能,也推荐大家有时间可以尝试一下。

禁止修改多人共用的远端分支

如果一条远端分支有多人共用,那么不要在上面执行reset、rebase等会修改这条分支已经存在的commit object的命令。

Git有哪些实用技巧

具体的解释参照这篇文章 Rebase and the Golden rule explained 。

撤销一个合并

如果是一个本地分支,仅需git reset --hard <合并前的SHA1>即可。

如果这个分支已经被推送到远端,比如说合并进master,发到线上才发现有bug需要回滚。这时分支有可能已经被其他人所使用,根据“禁止修改多人共用的远端分支”,你需要执行git revert -m 1 <合并的SHA1>,新增一个revert节点,如下图中的E'。

Git有哪些实用技巧

但要注意不要在原特性分支继续开发,而应该删除原来的分支,从E'节点拉出新分支做bug修复等。

如果在原特性分支上继续开发,则在合并回master的时候需要做一次revert操作revert掉E'节点,变成E&lsquo;&rsquo;(如下图),不然很容易出现丢失文件等问题。具体原因分析参照分支合并中的总结

Git有哪些实用技巧

从整个历史中删除一个文件

代码要开源了,但发现其中包括密钥文件或内网ip怎么办?

git filter-branch --tree-filter 'rm -f passwords.txt' HEAD

可以使用filter-branch命令,它的实现原理是将每个commit checkout出来,然后执行你给它的命令,像上面的rm -f passwords.txt,然后重新commit回去。

⚠️ 这个操作属于高危操作,会修改历史变更记录链,产生全新的commit object。所以执行前请通知仓库的所有开发者,执行后所有开发者从新的分支继续开发,弃用以前的所有分支。

其他好用的命令

下面这些命令也是比较实用的命令,感兴趣的同学可以自己学习一下。

  • git bisect 二分查找出现问题的变更节点,比如你发现当前提前下测试是不通过的,但HEAD~10(10个提交前)的测试是可以通过的,就可以用git bisect 来帮你定位到出现问题的变更点。

  • git blame 查看某行代码最后是谁修改的。

  • git show-branch 直观的展示多条分支间的关系。

  • git subtree 拆分或合并仓库。

到此,相信大家对“Git有哪些实用技巧”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Git有哪些实用技巧

本文链接: https://www.lsjlt.com/news/84715.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Git有哪些实用技巧
    本篇内容主要讲解“Git有哪些实用技巧”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Git有哪些实用技巧”吧!将几个commit压缩成一个⚠️ 这里有一点要特别...
    99+
    2024-04-02
  • Git的实用技巧都有哪些
    这期内容当中小编将会给大家带来有关Git的实用技巧都有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1. 通过 git blame 找到谁动了某行代码在 定位到出错的代码行 以后,就可以通过 git ...
    99+
    2023-06-28
  • Git使用技巧有哪些
    小编给大家分享一下Git使用技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Git,一个分布式版本控制系统,它已经成为了开源世界的源码控制默认工具,在4月...
    99+
    2023-06-16
  • Git有哪些使用技巧
    这篇文章将为大家详细讲解有关Git有哪些使用技巧,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1. Git常用命令图Workspace:工作区Index / Stage:暂存区Repository:本地仓...
    99+
    2023-06-17
  • Git的使用技巧有哪些
    本篇内容主要讲解“Git的使用技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Git的使用技巧有哪些”吧!1、你的 ~/.gitconfig 文件在**...
    99+
    2024-04-02
  • git使用小技巧有哪些
    本篇内容主要讲解“git使用小技巧有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“git使用小技巧有哪些”吧!1、 你的 ~/.gitconfig 文件当你第一次尝试使用 git 命令向仓库...
    99+
    2023-06-27
  • Git使用的小技巧有哪些
    这篇文章主要为大家展示了“Git使用的小技巧有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Git使用的小技巧有哪些”这篇文章吧。在日常工作中,经常会用到Git操作。但是对于新人来讲,刚上来...
    99+
    2023-06-27
  • Git维护小技巧有哪些
    这篇文章给大家分享的是有关Git维护小技巧有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。对 Git 仓库的维护通常是为了减少仓库的大小。如果你从另外一个版本控制系统导入了一个仓库,你可能需要在导入后清除掉不...
    99+
    2023-06-27
  • git使用中的小技巧有哪些
    这篇文章给大家分享的是有关git使用中的小技巧有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。1、Git 中的自动纠错我...
    99+
    2023-06-28
  • vue有哪些实用技巧
    本篇内容主要讲解“vue有哪些实用技巧”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue有哪些实用技巧”吧!监听组件的生命周期比如有父组件 Parent 和子...
    99+
    2024-04-02
  • PyCharm实用技巧有哪些
    这期内容当中小编将会给大家带来有关PyCharm实用技巧有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。今天主要跟大家介绍PyCharm的高效使用技巧!以下代码演示是在 Mac 环境下,Windows...
    99+
    2023-06-16
  • Python实用技巧有哪些
    这篇文章主要讲解了“Python实用技巧有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python实用技巧有哪些”吧!整理字符串输入整理用户输入的问题在编程过程中极为常见。通常情况下,...
    99+
    2023-06-16
  • javascript实用技巧有哪些
    本篇内容介绍了“javascript实用技巧有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、js整数的操作使用|0和~~可以将浮点转...
    99+
    2023-06-25
  • NPM实用技巧有哪些
    今天小编给大家分享一下NPM实用技巧有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1...
    99+
    2024-04-02
  • PowerBuilder实用技巧有哪些
    以下是一些PowerBuilder实用技巧: 使用DataWindow对象的自动过滤功能来简化数据过滤和排序操作。可以通过设置F...
    99+
    2023-10-24
    PowerBuilder
  • css实用技巧有哪些
    这篇文章主要讲解了“css实用技巧有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css实用技巧有哪些”吧!1、如何清除图片下方出现几像素的空白间隙?方...
    99+
    2024-04-02
  • 有哪些Python实用技巧
    本篇内容主要讲解“有哪些Python实用技巧”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“有哪些Python实用技巧”吧!1. 使用youtube-dl下载YouTube视频你可以使用Pytho...
    99+
    2023-06-16
  • VB.NET List实用技巧有哪些
    这篇文章给大家分享的是有关VB.NET List实用技巧有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。要使用VB.NET List,我们需要了解如何部署.NET框架所提供的多种方法。这也将是本文要介绍的内容...
    99+
    2023-06-17
  • Python实用的技巧有哪些
    这篇文章主要讲解了“Python实用的技巧有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python实用的技巧有哪些”吧!1. 列表推导式有人或许以前听说过这些。Python中的一种编...
    99+
    2023-06-16
  • Android TextView实用技巧有哪些
    今天小编给大家分享一下Android TextView实用技巧有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作