搜索
首页开发工具git10个提高效率的 Git 小技巧

10个提高效率的 Git 小技巧

1. 从某个分支检出单个文件

你是否有过破坏了某个文件,想要重新开始?

或者需要的文件在另一个分支中?

下面的命令让你直接从某个分支取到那个文件。

git checkout some-other-branch -- yarn.lock

你也可以从某个 commit 中取到 yarn.lock 文件

git checkout 9146467 -- yarn.lock

1.png

相比 cherry-pick 拿到某个 commit 的所有文件,这个技巧可以只拿到想要的那一个文件。

2. 查看日志时过滤掉 merge commits

使用 merge 合并时会产生一个新的提交,有时候这个提交很烦人。如果你想要查看日志时过滤掉这些合并的提交,可以使用以下命令:

git log --oneline --no-merges

2.png

3. 重写最后一次的 commit message

如果你最近的一次提交中,commit 信息写的不好或者有错别字,可以用以下命令修改:

git commit -v --amend

这里的 -v 是可选的,它可以提过一些额外信息来帮助你描述 commit message

4. 清除所有未跟踪的变更

首先来解释一个概念:

如果你创建了一个新文件,这个文件之前不存在于 git 历史中,那么这个文件就是一个未跟踪的变更。为了跟踪这个文件,你需要将它提交到 git 中。

3.png

如果使用 git checkout . 则会清除所有已经跟踪的变更。而使用以下命令可以清除所有未跟踪的变更:

git clean -f -d

5. 打印一个可视化的 log

使用以下命令可以打印出可视化的 log

git log --pretty=oneline --graph --decorate --all

(译者注:凑合看,跟 sourcetree 的还是不能比~)

6. 向 Git 查询 changelog

此命令可以向 Git 查询在两个 commit 之间,都有谁做了哪些变更,看起来就像一个 changelog 一样

git shortlog <commit>..HEAD

上面的 bc59094fbd619487e70ee0dbb7ee2c82 填写 commit 的 hash 值,就可以查出该 commit 和 HEAD 之间的变化,其中 .. 后面的 HEAD 也可以省略

4.png

你也可以用 git shortlog HEAD~20.. 取最近 20 个 commit 的记录

7. 查询指定日期的 log

你可能需要查询某两天之间的 git log,这时可以用 git log 命令配合 --since 与 --util 标识符

假如你想要查询 2016年2月10日 至 2016年2月19日 之间的日志,你可以运行:

git log --since=&#39;FEB 10 2016&#39; --until=&#39;FEB 19 2016&#39;

8. 列出所有 git aliases

有时候你可能忘记了之前设置的 git 别名,下面的命令虽不是 git 的功能,但是却能帮你找到所有的 git 别名

git config -l | grep alias | sed &#39;s/^alias\.//g&#39;

9. 查询包含某个关键字的 commits

如果你知道要找的代码具体写的是什么,或者知道某个特别的关键字,你就可以用它来搜索。

git log -S"config.menu_items"

本例中会查找所有包含 config.menu_items 的提交

10. 终极技能

git help -g

可以看到类似下面的 git 教程列表,通过 git help ed860b1d3fc6fad6c3155aa589fc820d 即可在浏览器打开指定的教程网页,左边那一列即为 ed860b1d3fc6fad6c3155aa589fc820d 名称

The common Git guides are:

   attributes   定义 Git 路径的属性
   everyday    每天学点有用的 Git 命令
   glossary     一个 Git 词汇表
   ignore        指定 Git 忽略文件
   modules     定义 Git 子模块
   revisions     指定 Git 的修订版和范围
   tutorial       Git 的教程介绍 (for version 1.5.1 or newer)
   workflows   一个推荐的 Git 工作流概述

本文来自 git教程 栏目,欢迎学习!

以上是10个提高效率的 Git 小技巧的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:savokiss。如有侵权,请联系admin@php.cn删除
github是什么github是什么Mar 24, 2023 pm 05:46 PM

​GitHub是一个面向开源及私有软件项目的托管平台,可以让开发者们在这里托管自己的代码,并进行版本控制。GitHub主打的是开源项目与协作,通过这个平台上的开源项目,开发者们可以查看其他开发者的项目源代码,并进行交流和学习。

git中push -u是什么意思git中push -u是什么意思Jul 01, 2022 am 10:36 AM

在git中,“push -u”的意思是将本地的分支版本上传到远程合并,并且记录push到远程分支的默认值;当添加“-u”参数时,表示下次继续push的这个远端分支的时候推送命令就可以简写成“git push”。

如何在GitLab上进行第一次登录并更改密码如何在GitLab上进行第一次登录并更改密码Mar 24, 2023 pm 05:46 PM

GitLab是一种基于Web的Git版本控制库管理软件,旨在帮助开发团队更好地协同工作,提高工作效率。当您第一次登录GitLab时,系统会提示您要更改初始密码以确保账户安全。本文将为大家介绍如何在GitLab上进行第一次登录并更改密码。

git的pack文件有什么用git的pack文件有什么用Jun 30, 2022 pm 05:41 PM

在git中,pack文件可以有效的使用磁盘缓存,并且为常用命令读取最近引用的对象提供访问模式;git会将多个指定的对象打包成一个成为包文件(packfile)的二进制文件,用于节省空间和提高效率。

git中pull失败了怎么办git中pull失败了怎么办Jun 30, 2022 pm 04:47 PM

git中pull失败的解决方法:1、利用“git reset --hard”强制覆盖掉自己的本地修改;2、利用“git stash”推送一个新的储藏,拉取之后利用“git stash pop”将修改保存到暂存区;3、若依然出现问题,则将文件保存到暂存区并提交注释即可。

git分支能改名字吗git分支能改名字吗Jun 16, 2022 pm 05:55 PM

git分支能改名字。改名方法:1、利用git中的branch命令修改本地分支的名称,语法为“git branch -m 旧名字 新名字”;2、利用“git push origin 新名字”命令,在删除远程分支之后将改名后的本地分支推送到远程;3、利用IDEA直接操作修改分支名称即可。

git怎么删除某个分支git怎么删除某个分支Jun 24, 2022 am 11:11 AM

git删除某个分支的方法:1、利用“git branch --delete dev”命令删除本地分支;2、利用“git push origin --delete branch”命令删除远程分支;3、利用“git branch --delete --remotes”命令删除追踪分支。

用三行代码使你的git提交记录变干净用三行代码使你的git提交记录变干净Feb 28, 2023 pm 04:19 PM

本篇文章给大家带来了关于git的相关知识,其中主要跟大家聊一聊怎么让你的git记录保持整洁,感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器