这款开源的 Git 后悔药,香

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

这款开源的 Git 后悔药,香

Ugit 支持的撤消操作

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

  • 撤消 git commit
  • 撤消 git add
  • 撤消 git push
  • 撤消 git branch -D (删除分支)
  • 撤消 git pull
  • 撤消 git reset
  • 撤消 git tag -d (删除标签)
  • 撤消 git stash apply
  • 撤消 git stash pop/drop/clear
  • 撤消 意外文件删除(提交后恢复已删除的文件)
  • 撤消 (恢复)文件到以前的版本
  • 撤消 git merge
  • 撤消 git cherry-pick
  • 撤消 git tag

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

  • git rebase
  • git worktree remove

安装

Ugit 有以下几个依赖项:

  • Bash >= 4.x.x
  • Git >= 2.23.0
  • fzf >= 0.21.0
  • GNU 实用程序,如 awk, grep, tput 等等

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。

这款开源的 Git 后悔药,香

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

这款开源的 Git 后悔药,香

这相当于 git reset HEAD~

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

e592de8 (HEAD -> main) Removed question.dart

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

这款开源的 Git 后悔药,香

就是这么简单。

小结

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

「Ugit」

地址:https://github.com/Bhupesh-V/ugit

⭐️:950+

语言:Shell


原文始发于微信公众号(小集):这款开源的 Git 后悔药,香

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/215397.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!