Magit, 一款Emacs里好用的Git客户端
目录
Magit简介
用户界面(from magit.vc):
部分命令选项比较多,提供了交互式的popup,不用刻意去记参数。如下图:
常用快捷键及命令
从 C-x g(magit-status) 开始,查看工作区概况(相当于执行git status)。
| 快捷键 | 命令 | 描述 |
|---|---|---|
| s | magit-stage | git add xx, 选中指定Untracked files/Unstaged changes |
| u | magit-unstage | git restore xxx, 取消选中 |
| d d | magit-diff-dwim | git diff, 查看光标所处区域diff, 只输入一个d,会看到diff的popup |
| f u | magit-fetch-from-upstream | git fetch |
| F u | magit-pull-from-upstream | git pull |
| c c | magit-commit-create | git commit, C-c C-c提交, C-c C-k取消 |
| b c | magit-branch-create | git switch |
| m m | magit-merge-plain | git merge |
| P u | magit-push-current-to-upstream | git push |
| z z | magit-stash-both | git stash |
| z p | magit-stash-pop | git stash pop |
| z k | magit-stash-drop | git stash drop |
| t t | magit-tag-create | git tag |
| P T | magit-push-tag | git push origin tag |
更多命令可参考:Magit User Manual
其他
GPG Pinentry配置
配置了提交时附上GPG签名,使用Magit后commit输入GPG key密码时,弹窗样式乱掉了。换用pinentry-mac后问题解决。效果如下:

pinentry安装及配置
| |
延伸阅读
参考文档
https://stackoverflow.com/questions/41502146/git-gpg-onto-mac-osx-error-gpg-failed-to-sign-the-data
https://apple.stackexchange.com/questions/418594/pinentry-mac-disable-keychain-storage