你可能不知道的20个Git命令,但真的很实用

【Git “grep“ 命令详解】 git grep是 Git 提供的一个强大命令,类似于 UNIX/Linux 中的grep命令,但它专门用于在 Git 仓库的版本控制文件中进行搜索。与常规的grep命令不同,git grep只会搜索已经被 Git 跟踪的文件内容,并且能够根据提交历史搜索特定版本的内容。它通常用于查找代码中的某个特定字符串、变量、函数,或者某些改动的详细信息。git grep是一个非常高效且实用的 Git 命令,尤其适合开发者在代码中快速查找函数、变量或特定的改动。无论是在当前工作目录中,还是在某个历史提交中, 阅读详情

如果您曾经浏览过git 手册(或 run man git),那么您会注意到 git 的功能比我们大多数人每天使用的要多得多。很多这些命令都非常强大,可以让你的生活更轻松(其他命令有点小众,但仍然很高兴知道)。

这篇文章概述了我最喜欢的 20 个未充分使用的 git 功能,您可以使用它们来提升您的开发过程,给您的同事留下深刻印象,帮助您回答 git 面试问题,最重要的是 - 玩得开心!

主要包含以下的命令

  • Git Web -打开内置 GUI
  • Git注释 -将额外信息附加到提交
  • Git Bisect -像专业人士一样调试
  • Git Grep -搜索任何东西
  • Git Archive -压缩项目以供共享
  • Git 子模块-将其他存储库导入您的
  • Git错误报告-使用系统信息编译错误报告
  • Git Fsck -验证和恢复无法访问的对象
  • Git Stripspace -删除尾随空格
  • Git Diff -比较两个文件之间的变化
  • Git Hooks -在运行 git 命令时执行脚本
  • Git Blame -显示给定行的作者
  • Git Large File Storage -在 git 中存储大文件
  • Git Garbage Collection -优化你的 git repo
  • Git Show -轻松检查任何 git 对象
  • Git Describe -根据最后一个标签给出可读的名称
  • Git Tag -在特定点创建版本标签
  • Git Reflog -列出在回购上所做的所有 git 操作
  • Git Log -查看提交日志和分支图
  • Git Cherry Pick-将功能拉入您的分支
  • Git Switch -在分支之间快速跳转
  • 奖励-使用更多命令扩展 git!

接下来详细聊聊这些命令

1、网页版

运行git instaweb以立即浏览 gitweb中的工作存储库

Git 有一个内置的基于 Web 的可视化工具,用于浏览本地存储库,它允许您通过浏览器中的 GUI 查看和管理您的存储库。它包含许多有用的功能,包括:

  • 浏览和单步执行修订并检查差异、文件内容和元数据
  • 可视化查看提交日志、分支、目录、文件历史和附加数据
  • 生成提交和存储库活动日志的 RSS或 Atom 提要
  • 搜索提交、文件、更改和差异

要打开它,只需git instaweb从您的存储库中运行即可。您的浏览器应该会弹出并加载http://localhost:1234. 如果你没有安装 Lighttpd,你可以用-dflag 指定一个替代的 web 服务器。其他选项可以通过标志(如-p端口、-b浏览器打开等)或在[instaweb]git 配置中的块下配置。

还有一个git gui命令,可以打开一个基于GUI 的 git应用程序

2、Git 笔记

用于git notes向提交添加额外信息

有时您需要将其他数据附加到 git 提交(除了更改、消息、日期时间和作者信息之外)。

注释存储在 中.git/refs/notes,并且由于它与提交对象数据分开,您可以随时修改与提交关联的注释,而无需更改 SHA-1 哈希。

git log您可以使用大多数 git GUI 应用程序或git notes show命令查看注释。一些 git 主机还在提交视图中显示注释(尽管GH 不再显示注释)。

3、Git 一分为二

您可以使用git bisect二进制搜索找到引入错误的提交

这是最强大但易于使用的 git 命令之一 - bisect 在调试时绝对是救命稻草。在开始对分后,它会为您检查提交,然后您告诉它提交是good(没有错误)或bad(引入错误),这可以让您缩小出现错误的最早提交的范围。

要开始,运行git bisect start然后传递给它一个已知的好提交git bisect good <commit-hash>和一个已知的坏提交(默认为当前)git bisect bad <optional-hash>。然后它将检查好提交和坏提交之间的提交,然后您指定 bug 存在的天气与git bisect good或git bisect bad。然后它会重复这个过程,在好与坏的中心检查一个提交,一直到你找到引入错误的确切提交。随时取消git bisect reset。

bisect 命令还有更多功能,包括回放、查看提交、跳过,因此下次调试时值得查看文档。

3、Git Grep

用于git grep在您的存储库中搜索代码、文件、提交或任何其他内容

有没有发现自己需要在 git项目中的任何地方搜索字符串?Ctrl使用 git grep,您可以轻松地在整个项目中和跨分支(例如更强大的+ F!)搜索任何字符串或RegEx。

git grep <regexp> <ref>

它包含大量选项来缩小搜索范围或指定结果格式。例如,用于-l仅返回文件名、-c指定要返回的每个文件的匹配数、-e排除匹配条件的结果、--and指定多个条件、-n使用行号进行搜索。

由于 git grep与正则表达式兼容,因此您可以使用搜索的字符串获得更多高级信息。您还可以使用它来指定文件扩展名,例如git grep 'console.log' *.js它将显示 JavaScript文件中的所有console.logs

第二个参数是一个 ref,可以是分支名称、提交、提交范围或其他任何内容。例如git grep "foo" HEAD~1将搜索以前的提交。


4、Git 存档

用于git archive将整个存储库合并到一个文件中

共享或备份存储库时,通常首选将其存储为单个文件。使用 git archive 将包括所有 repo 历史记录,因此可以轻松将其提取回其原始形式。该命令还包括许多附加选项,因此您可以准确自定义存档中包含和不包含的文件。

git archive --format=tar --output=./my-archive HEAD

5、Git 子模块

用于git submodule将任何其他存储库拉入您的存储库

在 git 中,子模块让您可以将一个存储库挂载到另一个存储库中,通常用于核心依赖项或将组件拆分到单独的存储库中。有关详细信息,请参阅这篇文章。

运行以下命令会将模块拉入指定位置,并创建一个.gitmodules文件,以便在克隆 repo 时始终下载该文件。克隆 repo 时使用--recursive标志来包含子模块。

git submodule add https://github.com/<user>/<repo> <path/to/save/at>

还有git subtree,它做类似的事情,但不需要元数据文件。

6、Git 错误报告

用于git bugreport编写错误票,包括 git 和系统信息

此命令将捕获系统信息,然后打开一个标准错误模板(重现步骤、实际 + 预期输出等)。完成的文件应该是一个非常完整的错误报告,包含所有必要的信息。

如果您是开源包的维护者并要求用户(开发人员)提出错误报告,这将非常方便,因为它确保包含所有必要的数据。

如果你向核心 git 系统提出错误报告,你也可以运行git diagnose命令,然后在这里提出你的问题。

7、git fsck

用于git fsck检查所有对象,或恢复无法访问的对象

虽然不经常需要,但有时您可能必须验证 git 存储的对象。这就是 fsck(或文件系统检查)发挥作用的地方,它测试对象数据库并验证所有对象的 SHA-1 ID 及其建立的连接。

它还可以与--unreachable标志一起使用,以查找不再可以从任何命名引用访问的对象(因为与其他命令不同,它包括 中的所有内容.git/objects)。

8、Git 条带空间

用于git stripspace格式化给定文件中的空格

最佳做法是避免在行尾尾随空格,避免有多个连续的空行,避免输入的开头和结尾出现空行,并以新行结束每个文件。有很多特定于语言的工具可以自动为您执行此操作(例如 prettier),但 Git 也内置了此功能。

它用于元数据(提交消息、标签、分支描述等),但如果您将文件通过管道传输给它,然后将响应通过管道传输回文件,它也可以工作。例如cat ./path-to-file.txt | git stripspace或git stripspace < dirty-file.txt > clean-file.txt

您还可以使用它来删除注释(使用--strip-comments),甚至注释掉行(使用--comment-lines)。

9、Git 差异

你git diff可以比较2组代码之间的区别

您可能知道您可以运行git diff以显示自上次提交以来的所有更改,或者用于git diff <commit-sha>比较 2 次提交或 1 次提交到 HEAD。但是您可以使用 diff 命令做更多的事情。

您还可以使用它来比较任意两个任意文件,diff file-1.txt file-2.txt(不再访问diffchecker.com!)

或者比较 2 个分支,或者相互引用,使用git diff branch1..branch2

请注意,双点 ( ..) 与空格相同,表示差异输入应该是分支的尖端,但您也可以使用三点 ( ...) 将第一个参数转换为共享共同祖先提交的引用在两个差异输入之间 - 非常有用!如果只想跨分支比较单个文件,只需将文件名作为第三个参数传递。

您可能希望查看在给定日期范围内所做的所有更改,对于此用途git diff HEAD@{7.day.ago} HEAD@{0}(上周),同样可以将其与文件名、分支名称、特定提交或任何其他参考配对。

还有一个git range-diff命令,它提供了一个用于比较提交范围的简单界面。

git diff 工具还有更多功能(以及使用您自己的差异检查器的选项),因此我建议您查看 文档。

10、Git 钩子

用于hooks在发生给定的获取操作时执行命令或运行脚本

Hooks 可以让你自动化几乎所有的事情。例如:确保满足标准(提交消息、分支名称、补丁大小)、代码质量(测试、lint)、将附加信息附加到提交(用户、设备、票证 ID)、调用 webhook 来记录事件或运行管道等

大多数 git 事件都有前置和后置钩子,比如提交、变基、合并、推送、更新、应用补丁等。

钩子存储在.git/hooks(除非你在别处配置它们git config core.hooksPath),并且可以使用git hook命令进行测试。由于它们只是 shell 文件,因此可用于运行任何命令。

钩子不会被推送到远程存储库,因此要在您的团队中共享和管理它们,您需要使用钩子管理器,例如lefthook或husky。还有几个3rd-party 工具,可以让管理钩子更容易,我推荐overcommit。

请记住,挂钩总是可以跳过(使用--no-verify标志),所以永远不要纯粹依赖挂钩,尤其是对于任何与安全相关的事情。

11、Git 责备

用于git blame显示特定修订和行的作者信息

一个经典的,快速找出谁写了特定代码行(也就是你的哪个同事应该为这个错误负责!)。但它也有助于确定在哪个时间点发生了某些更改并检查该提交和关联的元数据。

例如,要查看 index.rs 第 400 到 420 行的作者和提交信息,您可以运行:

git blame -L 400,420 index.rs

12、Git 语言文件系统

存储大文件git lfs,以免拖累您的存储库

您的项目通常会包含较大的文件(例如数据库、二进制资产、档案或媒体文件),这会减慢 git 工作流程并使使用限制达到最大。这就是大型文件存储的用武之地——它使您能够将这些大型资产存储在其他地方,同时使它们可以通过 git 进行跟踪并保持相同的访问控制/权限。LFS 的工作原理是将这些较大的文件替换为在 git 中跟踪的文本指针。

要使用它,只需运行git lfs track <file glob>,这将更新您的.gitattributes文件。您可以通过扩展名(例如*.psd)、目录或单独指定文件。运行git lfs ls-files以查看跟踪的 LFS 文件列表。

13、垃圾收集器

用于git gc优化您的存储库

随着时间的推移,git repos 会积累各种类型的垃圾,这些垃圾会占用磁盘空间并减慢操作速度。这就是内置垃圾收集器的用武之地。运行git gc将删除孤立的和不可访问的提交(使用git prune),压缩文件修订和存储的 git 对象,以及一些其他一般的内务处理任务,如打包引用、修剪引用日志、尊重元数据或陈旧工作树和更新索引。

添加--aggressive标志将积极优化存储库,丢弃任何现有的增量并重新计算它们,这需要更长的时间才能运行,但如果您有一个大型存储库,则可能需要。

14、Git 显示

用于git show轻松检查任何 git 对象

以易于阅读的形式输出对象(blob、树、标签或提交)。要使用,只需运行git show <object>. 您可能还想附加--pretty标志,以获得更清晰的输出,但还有许多其他选项可用于自定义输出(使用--format),因此此命令非常强大,可以准确显示您需要的内容。

这非常有用的一个实例是在另一个分支中预览文件,而无需切换分支。赶紧跑git show branch:file

15、Git 描述

用于git describe查找可从提交中访问的最新标记,并为其指定一个人类可读的名称

运行git describe,您将看到一个人类可读的字符串,该字符串由最后一个标记名称与当前提交组合而成,以生成一个字符串。您还可以将特定标签传递给它,

请注意,除非您附加--all标志,否则您必须已创建标签才能正常工作。默认情况下,Git describe 也只会使用带注释的标签,因此您必须指定--tags标志以使其也使用轻量级标签。

16、Git 标签

使用标记回购历史中的特定点git tag

能够标记存储库历史记录中最常用于表示发布版本的特定重要点通常很有用。创建标签就像 一样简单git tag <tagname>,或者您可以使用 标记历史提交git tag -a v4.2.0 <commit sha>。与提交一样,您可以在标签旁边包含一条消息,使用-m.

不要忘记将您的标签推送到远程,使用git push origin <tagname>.要列出所有标签,只需运行git tag,并可选择-l用于通配符搜索。然后你就可以检查一个特定的标签,git checkout <tagname>

17、Git 刷新日志

使用列出对您的回购所做的所有更新git reflog

Git 使用称为参考日志或“reflogs”的机制跟踪分支尖端的更新。跟踪各种事件,包括:克隆、拉取、推送、提交、检出和合并。能够找到事件引用通常很有用,因为许多命令都接受引用作为参数。只需运行git reflog即可查看 上最近发生的事件HEAD。

reflog 真正有用的一件事是恢复丢失的提交。Git 永远不会真正丢失任何东西,即使是在重写历史时(比如变基或提交修改)。Reflog 允许您返回提交,即使它们没有被任何分支或标记引用。

默认情况下 reflog 使用HEAD(您当前的分支),但您可以在任何 ref 上运行 reflog。例如git reflog show <branch name>,或查看隐藏的更改git reflog stash。或显示所有参考资料git reflog show --all

18、Git 日志

用于git log查看提交列表

您可能已经熟悉运行git log以查看当前分支上最近提交的列表。但是您可以使用 git log 做更多的事情。

使用git log --graph --decorate --oneline将显示一个漂亮整洁的提交图以及 ref 指针。

您还经常需要能够根据各种参数过滤日志,其中最有用的是:

  • git log --search="<anything>"- 搜索特定代码更改的日志
  • git log --author="<pattern>"- 仅显示特定作者的日志
  • git log --grep="<pattern>"- 使用搜索词或正则表达式过滤日志
  • git log <since>..<until>- 显示两个引用之间的所有提交
  • git log -- <file>- 显示仅对特定文件进行的所有提交

或者,只运行git shortlog汇总的提交列表。

19、Git 樱桃采摘

用于git cherry-pick通过引用选择指定的提交并将它们附加到工作 HEAD

有时你需要从其他地方拉一个特定的提交到你当前的分支。这对于应用热修复、撤消更改、恢复丢失的提交以及在某些团队协作设置中非常有用。请注意,通常传统的合并是更好的做法,因为挑选提交会导致日志中出现重复提交。

用法很简单,只需运行git cherry-pick <commit-hash>. 这会将指定的提交拉入当前分支。

20、Git 开关

利用git switch

在分支之间移动是我们经常做的事情,该switch命令就像是简化版的git checkout,它可以用于创建和在分支之间导航,但不像 checkout 在您在分支之间移动时不会复制修改的文件。

与 类似checkout -b,使用 switch 命令,您可以附加-c标志以创建一个新分支,然后直接跳入其中,例如git switch -c <new branch>. 运行git switch -将放弃您所做的任何实验性更改,并返回到您之前的分支。

21、Git 站会

用于git standup根据 git commits 回忆你在上一个工作日做了什么

我把这个放在最后,因为它不包含在大多数 git 客户端中,但是您可以使用系统包管理器、使用 1 行 curl 脚本或通过从源代码构建来轻松安装它。

如果您的老板要求您每天站立一次,以更新昨天的工作,但您永远记不起自己到底做了什么——这个适合您!它将显示一个格式良好的列表,列出在给定时间范围内完成的所有事情。用法很简单,只需运行git standup,或使用这些选项指定应显示哪些数据(作者、时间范围、分支等)。

22、奖金

Git 可以通过附加组件轻松扩展,以添加执行有用任务的额外命令。最完整的扩展之一是@tj的git-extras。它为您提供了 70 多个额外的命令来自动执行常见的 git 作业。

有关更有用的 git 附加组件的列表,请参阅
stevemao/awesome-git-addons。

如果您正在使用 GitHub 存储库,那么GitHub CLI让您可以从命令行执行常见任务(管理 PR、问题、代码审查等)。

如果你正在学习前端,Git是一定要开始学习的,我们在讲完html标签属性之后就开始给大家讲解了git和markdown使用!上次和大家分享Git命令很多同学表示看不懂,不能理解!的确才开始学习Git不适合用这样复杂的方法,可以通过先通过鼠标操作的方式学习,很荣幸我们的30天课程设计在教大家入门Git的时候就是鼠标操作的,如果需要相关教程,可以私聊我!

为帮助到一部分同学不走弯路,真正达到一线互联网大厂前端项目研发要求,首次实力宠粉,打造了《30天挑战学习计划》,内容如下:

HTML/HTML5,CSS/CSS3,JavaScript,真实企业项目开发,云服务器部署上线,从入门到精通

  • PC端项目开发(1个)
  • 移动WebApp开发(2个)
  • 多端响应式开发(1个)

共4大完整的项目开发 !一行一行代码带领实践开发,实际企业开发怎么做我们就是怎么做。从学习一开始就进入工作状态,省得浪费时间。

从学习一开始就同步使用 Git 进行项目代码的版本的管理,Markdown 记录学习笔记,包括真实大厂项目的开发标准和设计规范,命名规范,项目代码规范,SEO优化规范

从蓝湖UI设计稿 到 PC端,移动端,多端响应式开发项目开发

  • 真机调试,云服务部署上线;
  • Linux环境下 的 Nginx 部署,Nginx 性能优化;
  • Gzip 压缩,HTTPS 加密协议,域名服务器备案,解析;
  • 企业项目域名跳转的终极解决方案,多网站、多系统部署;
  • 使用 使用 Git 在线项目部署;

这些内容在《30天挑战学习计划》中每一个细节都有讲到,包含视频+图文教程+项目资料素材等。只为实力宠粉,真正一次掌握企业项目开发必备技能,不走弯路 !

过程中【不涉及】任何费用和利益,非诚勿扰 。

如果你没有添加助理老师微信,可以添加下方微信,说明要参加30天挑战学习计划,来自优快云!老师会邀请你进入学习,并给你发放相关资料。

30 天挑战学习计划 Web 前端从入门到实战 | arry老师的博客-艾编程

20 个 Git 命令行技巧 大多数开发人员每天都会使用 Git,但许多人只是对其功能略知一二。学习一些 git 命令行技巧可以改变游戏规则,让你更高效、更有成效,对版本控制更有信心。那么,让我们深入了解每个开发人员工具包中都应该有的 20 个 Git 命令行技巧。在最后一次提交中犯了错误?没问题。此命令撤消您的最后一次提交,但将更改保留在您的工作目录中,因此您可以轻松解决问题。提示:如果您想保留更改,请使用 --soft;如果您想撤消所有内容(包括本地更改),请使用 --hard。 阅读详情

相关推荐

EMI硬件抑制八项工程对策:从回路面积到谐振规避

电磁干扰(EMI)是电子系统可靠性与EMC合规性的核心挑战,其本质源于高频电流回路产生的辐射与耦合效应。理解回路面积、共模/差模噪声、阻抗匹配等基础原理,是实施有效抑制的前提。技术价值体现在降低辐射发射(RE)、传导发射(CE)超标风险,提升产品一次通过率与长期稳定性。典型应用场景包括开关电源设计、高速数字接口布局、工业嵌入式设备及医疗电子等对EMC要求严苛的领域。本文聚焦可落地的硬件级对策,涵盖回路面积控制、屏蔽策略、变压器漏磁管理、双线传输与阻抗匹配等关键实践,深度融合电流回路物理模型与PCB工程实现。

weixin_35019679的博客 86

git grep 全字匹配_git grep命令用法

通过git grep命令检索文件中的文本内容非常的便利。此命令参数众多,这里不一一介绍,只介绍最为常用的几种。更为详细的用法可以参阅官方文档,打开方式如下:[Shell] 纯文本查看 复制代码$ git grep --help下面通过代码实例介绍一下此命令常用的检索功能。当前项目下,有两文件,readme.txt和antzone.txt,内容分别是:[HTML] 纯文本查看 复制代码www.sof...

weixin_39859055的博客 4748

LVDS信号调试必备:5分钟搞懂Xilinx IDELAYE3的TIME模式校准

本文深入解析了在Xilinx Ultrascale系列FPGA中调试LVDS信号时,如何正确使用IDELAYE3的TIME模式进行精密延迟校准。文章重点阐述了IDELAYCTRL、EN_VTC管脚与校准状态机的协同工作机制,揭秘了内置自校准(BISC)中Align_Delay的影响,并提供了从抽头值计算到实际眼图优化的完整实战方案,帮助工程师快速解决高速接口的时序问题。

joy55的博客 217

10 个高级 Git 命令

usingxargs在这种情况下很有用,因为它获取命令的输出git rev-list,即 Git 存储库中所有修订的列表,并将每个修订作为参数传递给命令git grep,以便可以搜索每个修订的内容以查找指定的字符串。在提交或推送之前比较您在两个文件或分支之间所做的更改是有帮助的,因为它允许您查看您的更改并确保它们已准备好与他人共享。git grep是一个有用的工具,用于快速搜索 Git 存储库的代码库以查找特定信息搜索 Git 存储库当前分支中的跟踪文件并返回与指定模式匹配的行列表。

我的博客,不一样的自我表达 472

「Unity3D」Addressable版本冲突解析:SBP与Addressables兼容性问题实战指南

本文深入解析Unity3D中Addressable与SBP(Scriptable Build Pipeline)版本冲突问题,提供实战解决方案。当遇到「Build Task CreateBuiltInShadersBundle failed」错误时,可通过版本匹配、临时资源引用或构建参数调整解决。文章详细分析兼容性原理,并给出版本组合指南与最佳实践,帮助开发者高效处理资源构建问题。

weixin_29001683的博客 410

RFSoC应用XCZU47DR八发八收FPGA设计方案

本文介绍了基于Xilinx XCZU47DR RFSoC芯片的八发八收FPGA设计方案。该方案采用集成射频数据转换器的SoC架构,支持8路14bit ADC(5GSPS)和8路14bit DAC(9.85GSPS),可直接处理5GHz以下射频信号。硬件设计包含高性能输入缓冲器、QMC校正和复杂混频器,适用于5G/6G通信、雷达、卫星通信等领域。文章详细阐述了ADC/DAC子系统参数,包括通道配置、采样率、带宽等特性,并提供了FPGA顶层模块的硬件接口设计,展示了多通道数据收发处理能力。该方案无需外置混频器,

toonyhe的博客 1794

Git第十讲 Git如何正确使用log快速查找内容/提交

Git第十讲 Git如何正确使用log快速查找内容/提交

程序员路同学 7195

DDR5 JEDEC标准简析:一次读懂DDR5的核心规范!

JEDEC,全称是,中文名称是「电子元件工程联合委员会」,它是全球权威的存储接口标准制定机构。我们常见的 DDR2、DDR3、DDR4、DDR5 都是它搞出来的。📌 JEDEC 就像存储接口界的“裁判+编剧”——规定谁该怎么跑,怎么演,怎么配合。

weixin_43199439的博客 2572

Git系列:git grep 被忽视的操作细节

git grep是一个功能强大的搜索工具,它可以帮助开发者在Git仓库中快速定位代码。通过掌握其高级搜索技巧,你将能够更有效地进行代码搜索和理解项目的历史。记住,熟练使用git grep不仅能提高你的工作效率,还能帮助你更好地维护和理解代码。

专注于全栈开发领域 1247

基于YOLOv8的建筑材料分类系统:从数据集构建到UI界面实现

建筑材料分类数据集需要包含各种常见建筑材料的图像,并对每种材料进行标注。砖块(Brick)混凝土(Concrete)钢筋(Rebar)木材(Wood)瓷砖(Tile)玻璃(Glass)钢材(Steel)塑料(Plastic)石膏板(Drywall)绝缘材料(Insulation)如果没有找到合适的公开数据集,可以构建自己的数据集。使用智能手机或专业相机拍摄各种建筑材料的照片确保在不同光照条件、角度和背景下拍摄每类材料至少收集300-500张图像。

YOLO 490

【2024年华为秋招-12月25日-第三题(300分)- PCB印刷电路板布线】(题目+思路+Java&C++&Python解析+在线测试)

在PCB印刷电路板设计中,器件之间的连线需要避免线路的阻抗值增大、而且赛件之间还有别的器件和别的干扰源,在布线时我们希望受到的干扰尽量小。现将电路板简化成一个M×N的矩阵,每个位置(单元格)的值表示其源干扰度。如果单元格的值为0,表示此位置没有干扰源;如果单元格的值为非0,则表示此位置是干扰源,其值为源干扰度。连线经过干扰源或干扰源附近会增加连线的总干扰度。位置Axy的干扰源的源干扰度为dd01、若连线经过位置Axy,则其总干扰度会增加d;2、若连线经过离位置A。

m0_73659489的博客 344

你可能不知道的几个 git 实用指令

前言 很常见的不说了,介绍几个你们可能不知道但是却实用的命令吧,数量不多。 一、克隆工程 我们都知道克隆某个工程的代码使用 “git clone url”,这样默认拉取的是 master 分支的代码。如果你只想拉取某个分支的代码,可以使用该命令: git clone url -b &lt;branch&gt; 示例: 二、设置别名/缩写 git 的诸多命令如 checkout,commit,s...

阿飞的博客 852

科研绘图系列:R语言circos图(circos plot)

科研绘图系列:R语言circos图(circos plot)

专注生信领域 3435

Git 冷门命令解析:你可能不知道的 Git 技巧

Git 冷门命令解析:你可能不知道的 Git 技巧

全栈程序员的开发日常 1526

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

你可能不知道的git revert操作细节

git revert主要用于还原一个或多个现有提交,并生成一条新的更改记录。 日常开发过程中,可能会出现要发版的时候,发现master分支上合并了这一期不需要发版的功能点,需要将这些提交还原。 以下是 git 官网 给出的git revert 命令相关的选项。 git revert [--[no-]edit] [-n] [-m parent-number] [-s] [-S[<keyid>]] <commit> git revert (--continue | --skip |

weixin_41489378的博客 5206

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

你可能不知道的关于 Git stash 的技巧

简评:如果你用过一段时间的 Git,你可能会用过 Git stash 命令。它是 Git 最有用的功能之一。 以下是一些我在上周学的关于 Git stash 的技巧。 Git stash save Git stash list Git stash apply Git stash pop Git stash show Git stash branch <name> Git stash clear Git stash drop 1. Git stash save 这个命令类似于.

笔记 803

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

你可能不知道的 Git

你可能不知道的 Git PPT: ​你可能不知道的 Git​ 前言 首先,本文假设你已经对 Git 有了初步的认知: 理解 Git 在本地的三种工作区域:Git 仓库、工作目录和暂存区域; 熟练操作 pull / push / branch / checkout / commit / ... 常见指令; 但是: 希望能够进一步了解 Git 的一些基本原理; 偶尔会遇到与预期不一致的现象...

dtq007的博客 436

20 个每个开发者都应该知道的 Git 命令行技巧

大多数开发者每天都在使用 Git,但很多人只是在表面上使用它。是的,我们都知道如何进行推送、拉取和提交,但那些能让你感叹“原来 Git 还能这么用”的技巧呢?学习一些 Git 命令行技巧可以改变游戏规则,让你在使用版本控制时更加高效、生产力更高、更加自信。让我们来看看每个开发者都应该掌握的 20 个 Git 命令行技巧。

qq_28791753的博客 831

20 个最常用的 Git 命令

在使用 Git 时最常使用的 20 个命令。

万物不及香香的博客 5056

你必须知道的Git命令

虽然今天很忙,但是还是不忘在掘金皮,一边写代码,一边皮,一边写笔记,突然停顿了一会发现,我居然骗了个小姐姐,咳咳,中奖了,今天真是开心的一天 这篇笔记是为了学习Git知识而收集总结的,主要是看受一篇帖子《你可能不知道的15条Git命令》的影响,才想记录这篇笔记的,如有雷同,纯属巧合。 Git 是一个分布式版本控制软件, 最初目的是为更好地管理Linux内核开发而设计。 来源:维基百科 - G...

weixin_34315189的博客 153

开发人员需要知道的 20个Git命令行技巧

大多数开发人员每天都会使用 Git,但许多人只是对其功能略知一二。学习一些 git 命令行技巧可以改变游戏规则,让你更高效、更有成效,对版本控制更有信心。那么,让我们深入了解每个开发人员工具包中都应该有的 20 个 Git 命令行技巧。1. 交互式添加此命令允许您暂存文件的部分内容而不是整个文件。当您只想提交文件中的某些更改而将其余部分留待以后处理时,这非常有用。git add -p提示:当您在一个文件中处理多个功能但想要单独提交它们时,请使用此功能!2. 撤消最后一次提交在最后一次提交中犯了错误。

ufrontend的博客 1196

分享几个你可能不知道的交互式Git 命令

本节中讲述的几个交互式 Git 命令可以帮助你将文件的特定部分组合成提交。

华为云官方博客 1181

5个实用Git命令 解放开发效率

本文围绕提升开发效率,详细介绍了五个实用的 Git 命令。stash用于存储临时代码,在中断开发去处理紧急任务时,能保存工作区与暂存区内容,还可通过多种参数灵活选择存储范围,如仅工作区、包含未跟踪文件等,并能查看、恢复或删除存储的内容。reset --soft实现软回溯,可将commit回滚至上一个或指定的commit,同时保留工作区和暂存区的改动,便于继续修改后重新提交。cherry-pick用于复制commit,能将开发分支上特定的commit应用到当前分支,遇到冲突时也有相应的解决与跳过命令。

sosovo66的博客 1126

git隐藏修改_您可能不知道的有关Git隐藏的有用技巧

git隐藏修改I have launched a newsletter Git Better to help learn new tricks and advanced topics of Git. If you are interested in getting your game better in Git, you should definitely check that out. 我已经发...

1215

git 实用命令

git 实用命令 记录一下常用和实用的git命令,持续更新. 1.与项目的git仓库建立连接 > git clone git://github.com/xxxxxx/xxxx.git 可以直接通过url方式下载并创建一个本地仓库,与远端关联,或者在已有项目代码的基础上,通过init操作来初始化。 init会创建.git文件夹,里面包含git所需数据。 remote add可以与远程仓库建立连...

weixin_30920091的博客 141
上一篇: 记好这24个ES6方法,用于解决实际开发的JS问题
下一篇: Cookie 会话身份验证是如何工作的?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

艾编程前端技术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值