Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Emacs 有一个可选的撤销树。您可以将光标移动到每个节点,然后点击返回以及时返回,甚至沿着分支。
git 有没有类似的东西,可以在终端(不是 Emacs)中访问。所以,在一个 git 项目中,我可以输入一个命令,它会显示树。我可以四处游荡,及时返回甚至切换到另一个分支,然后点击返回,它会检查特定提交的整个状态。
正如@NevikRehnel 所说,tig是你的朋友。
tig
tig --all以树形形式显示您的完整日志(作为git log's--graph开关)。
tig --all
git log
--graph
您使用向上键和向下键在提交之间移动,您会看到一个带有git show的选定提交Enter,并且您可以点击Shift+C来执行git cherry-pick该提交。
git show
git cherry-pick
您可以H随时按以查看帮助。
您可以签出分支,但您也可以添加自定义绑定来执行git checkout.
git checkout
我认为man tigrc了解如何就足够了。
man tigrc
对于 git 的图形视图,安装 gitk 实用程序,然后键入 gitk --all 并右键单击以更改头部位置。使用可以使用软复位或硬复位。注意:硬重置将丢失您要重置的磁头后所做的所有更改。