这款开源的 Git 后悔药,香

669次阅读  |  发布于2年以前

Git 现在已经成为大多数开发人员日常开发中,版本控制的基础工具。Git 基础知识很容易掌握,我们将更改添加到暂存区域,将它们添加到提交树并将它们推送到远程存储库。但是一旦涉及到团队协作时,或者有时候不小心,就会出现各种问题。然而 git 并没有提供类似于 Ctrl+Z 这样的取消操作,如果出错了,该怎么办呢?这里给大家安利一款开源命令行工具,可以帮助我们以交互方式来执行撤消动作:「Ugit」

Ugit 支持的撤消操作

Ugit 是一个非常有用的工具,它支持撤消以下操作:

目前暂时不支持撤销以下两个操作

安装

Ugit 有以下几个依赖项:

Fzf 是另一个很酷的工具,一个命令行模糊查找器。我们可以使用默认包管理器简单地安装它。如在 macOS 上,可使用以下命令安装。

brew install fzf

安装好依赖项后,在 macOS 上,依然使用 homebrew 来安装

brew install ugit

在 Linux 上,无法通过包管理器获得 Ugit,所以可以克隆存储库并运行安装脚本,或者使用以下命令:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/Bhupesh-V/ugit/master/install)"

使用

安装后,只需在终端中输入 ugit 并按 Enter。

Ugit 可以撤消许多不同的 git 命令。我们可以使用箭头键选择合适的。让我们添加一个提交并立即撤消它。

这相当于 git reset HEAD~

又比如如果我们不小心删除了文件怎么办?我们不想恢复提交,我们只想取回文件。

e592de8 (HEAD -> main) Removed question.dart

这个提交 e592de8 意外删除了 quiz.dart,看看使用 Ugit 如何恢复:

就是这么简单。

小结

需要注意的是,即使有 Ugit 这样方便的工具,完全依赖它也是有风险的。Ugit 隐藏了 git 的复杂性。如果我们不了解 git 的基础知识,我们可能会损坏存储库。它是一个很好的记忆辅助工具,但我们仍然应该了解 git 的基础知识。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8