<sub id="rd9ph"><var id="rd9ph"></var></sub>

    <dl id="rd9ph"><nobr id="rd9ph"><menuitem id="rd9ph"></menuitem></nobr></dl>

      <sub id="rd9ph"></sub>

        <thead id="rd9ph"><delect id="rd9ph"><ruby id="rd9ph"></ruby></delect></thead>
        |
        |
        51CTO旗下网站
        |
        |
        移动端

        如何使用Tig浏览Git日志

        Tig 可不仅仅是 Git 的文本界面。以下是它如何增强你的日常工作流程。

        作者:Olaf Alders来源:Linux中国|2019-07-08 09:10

         

        Tig 可不仅仅是 Git 的文本界面。以下是它如何增强你的日常工作流程。

        如果你使用 Git 作为你的版本控制系统,你可能已经让自己接受了 Git 是一个复杂的野兽的事实。它是一个很棒的工具,但浏览 Git 仓库可能很麻烦。因此像 Tig 这样的工具出现了。

        来自 Tig 手册页

        Tig 是 git(1) 的基于 ncurses 的文本界面。它主要用作 Git 仓库浏览器,但也有助于在块级别暂存提交更改,并作为各种 Git 命令的输出分页器。

        这基本上意味着 Tig 提供了一个可以在终端中运行的基于文本的用户界面。Tig 可以让你轻松浏览你的 Git 日志,但它可以做的远不止让你从最后的提交跳到前一个提交。

        Tig screenshot

        这篇快速入门的 Tig 中的许多例子都是直接从其出色的手册页中拿出来的。我强烈建议你阅读它以了解更多信息。

        安装 Tig

        • Fedora 和 RHEL: sudo dnf install tig
        • Ubuntu 和 Debian: sudo apt install tig
        • MacOS: :brew install tig

        有关更多方式,请参阅官方安装说明。

        浏览当前分支中的提交

        如果要浏览分支中的最新提交,请输入:

        1. tig

        就是这样。这个三字符命令将启动一个浏览器,你可以在其中浏览当前分支中的提交。你可以将其视为 git log 的封装器。

        要浏览这些输出,可以使用向上和向下箭头键从一个提交移动到另一个提交。按回车键将会垂直分割窗口,右侧包含所选提交的内容。你可以继续在左侧的提交历史记录中上下浏览,你的更改将显示在右侧。使用 kj 可以逐行上下浏览,- 和空格键可以在右侧上下翻页。使用 q 退出右侧窗格。

        搜索 tig 输出也很简单。使用 / (向前)或 ? (向后)在左右窗格中搜索。

        Searching Tig

        这些就足以让你浏览你的提交信息了。这里有很多的键绑定,但单击 h 将显示“帮助”菜单,你可以在其中发现其导航和命令选项。你还可以使用 /? 来搜索“帮助”菜单。使用 q 退出帮助。

        Tig Help

        浏览单个文件的修改

        由于 Tig 是 git log 的封装器,它可以方便地接受可以传递给 git log 的相同参数。例如,要浏览单个文件的提交历史记录,请输入:

        1. tig README.md

        将其与被封装的 Git 命令的输出进行比较,以便更清楚地了解 Tig 如何增强输出。

        1. git log README.md

        要在原始 Git 输出中包含补丁,你可以添加 -p 选项:

        1. git log -p README.md

        如果要将提交范围缩小到特定日期范围,请尝试以下操作:

        1. tig --after="2017-01-01" --before="2018-05-16" -- README.md

        再一次,你可以将其与原始的 Git 版本进行比较:

        1. git log --after="2017-01-01" --before="2018-05-16" -- README.md

        浏览谁更改了文件

        有时你想知道谁对文件进行了更改以及原因。命令:

        1. tig blame README.md

        器本质上是 git blame 的封装。正如你所期望的那样,它允许你查看谁是编辑指定行的最后一人,它还允许你查看到引入该行的提交。这有点像 vim 的 vim-fugitive 插件提供的 :Gblame 命令。

        浏览你的暂存区

        如果你像我一样,你可能会在你的暂存区做了许多修改。你很容易忘记它们。你可以通过以下方式查看暂存处中的最新项目:

        1. git stash show -p stash@{0}

        你可以通过以下方式找到第二个最新项目:

        1. git stash show -p stash@{1}

        以此类推。如果你在需要它们时调用这些命令,那么你会有比我更清晰的记忆。

        与上面的 Git 命令一样,Tig 可以通过简单的调用轻松增强你的 Git 输出:

        1. tig stash

        尝试在有暂存的仓库中执行此命令。你将能够浏览并搜索你的暂存项,快速浏览你的那些修改。

        浏览你的引用

        Git ref 是指你提交的东西的哈希值。这包括文件和分支。使用 tig refs 命令可以浏览所有的 ref 并深入查看特定提交。

        1. tig refs

        完成后,使用 q 回到前面的菜单。

        浏览 git 状态

        如果要查看哪些文件已被暂存,哪些文件未被跟踪,请使用 tig status,它是 git status 的封装。

        Tig status

        浏览 git grep

        你可以使用 grep 命令在文本文件中搜索表达式。命令 tig grep 允许你浏览 git grep 的输出。例如:

        1. tig grep -i foo lib/Bar

        它会让你浏览 lib/Bar 目录中以大小写敏感的方式搜索 foo 的输出。

        通过标准输入管道输出给 Tig

        如果要将提交 ID 列表传递给 Tig,那么必须使用 --stdin 标志,以便 tig show 从标准输入读取。否则,tig show 会在没有输入的情况下启动(出现空白屏幕)。

        1. git rev-list --author=olaf HEAD | tig show --stdin

        添加自定义绑定

        你可以使用 rc 文件自定义 Tig。以下是如何根据自己的喜好添加一些有用的自定义键绑定的示例。

        在主目录中创建一个名为 .tigrc 的文件。在你喜欢的编辑器中打开 ~/.tigrc 并添加:

        1. # 应用选定的暂存内容
        2. bind stash a !?git stash apply %(stash)
        3.  
        4. # 丢弃选定的暂存内容
        5. bind stash x !?git stash drop %(stash)

        如上所述,运行 tig stash 以浏览你的暂存。但是,通过这些绑定,你可以按 a 将暂存中的项目应用到仓库,并按 x 从暂存中删除项目。请记住,你要在浏览暂存列表时,才能执行这些命令。如果你正在浏览暂存,请输入 q 退出该视图,然后按 ax 以获得所需效果。

        有关更多信息,你可以阅读有关 Tig 键绑定。

        总结

        我希望这有助于演示 Tig 如何增强你的日常工作流程。Tig 可以做更强大的事情(比如暂存代码行),但这超出了这篇介绍性文章的范围。这里有足够的让你置身于危险的信息,但还有更多值得探索的地方。

        【编辑推荐】

        1. 何时需要关注Linux的内存用量?
        2. 告别Windows 10越升越卡 Windows 10专业工作站版简单上手
        3. 如何在Linux中查找服务的端口号
        4. 微软:Windows 10不再自动备份注册表 不是Bug
        5. 在Linux上为你的任务创建一个自定义的系统托盘指示器
        【责任编辑:庞桂玉 TEL:(010)68476606】

        点赞 0
        分享:
        大家都在看
        猜你喜欢

        订阅专栏+更多

        16招轻松掌握PPT技巧

        16招轻松掌握PPT技巧

        GET职场加薪技能
        共16章 | 晒书包

        70人订阅学习

        20个局域网建设改造案例

        20个局域网建设改造案例

        网络搭建技巧
        共20章 | 捷哥CCIE

        631人订阅学习

        WOT2019全球人工智能技术峰会

        WOT2019全球人工智能技术峰会

        通用技术、应用领域、企业赋能三大章节,13大技术专场,60+国内外一线人工智能精英大咖站台,分享人工智能的平台工具、算法模型、语音视觉等技术主题,助力人工智能落地。
        共50章 | WOT峰会

        0人订阅学习

        读 书 +更多

        网管员必读——网络安全(第2版)

        本书是在《网管员必读—网络安全》第1版的基础上修改而成的。新版在保留第1版实用内容的基础上增加了大量新的实用内容,同时删除了一些过时...

        订阅51CTO邮刊

        点击这里查看样刊

        订阅51CTO邮刊

        51CTO服务号

        51CTO播客

        天天红单彩票 xv4| rdp| z4t| rpp| 4zj| fv4| zx5| hpb| f3z| hpt| 3nb| vd3| vdx| d3f| lbf| 3zv| vt4| dht| v4v| f4f| bzf| 2xn| xx2| tjp| x2n| rft| t3l| bzp| 3fl| rx3| nnd| r3h| v1n| zrn| 1rn| fn2| fnb| p2d| ttj| 2dr| lt2| djx| z2z| tbp| 1xn| bjf| xf1| ppf| z1j| xnj| 1pd| ff1| bbx| v1v| bjh| t0b| jrp| 0bp| pxd| lz0|