客户端

tui

  1. tig (opens in a new tab)
  2. lazygit

gui

  1. SourceTree (opens in a new tab)

Emacs 插件

  1. MaGit (opens in a new tab)

命令增强

  1. zsh git 插件 (opens in a new tab):【推荐】提供了非常多好用的 git alias
  2. git-extras (opens in a new tab):提供了 git 的额外扩展命令,比如重命名分支(rename)、查看仓库概览(summary)
  3. delat (opens in a new tab): Git diff 高亮工具。GitHub starslast commit
  • 可以配合 lazygit 使用

辅助

  1. git-sim (opens in a new tab):使用图片动画模拟 Git 命令的效果, 制作 Git 教程很有用。
Preview

npm 模块

  1. @napi-rs/simple-git (opens in a new tab): nextra 在用的 git 模块。
  2. simple-git (opens in a new tab): 基于 nodejs 的 git 接口。npm downloads

教程

  1. Git 教程 (opens in a new tab)
  2. git-scm (opens in a new tab):推荐
  3. 廖雪峰-Git 教程 (opens in a new tab)
  4. 高质量的 Git 中文教程 (opens in a new tab)
  5. Git 飞行规则 (opens in a new tab)
  6. 30 seconds of code Git (opens in a new tab): 包含了一些 Git 有用的技巧。

文章

  1. 理解了这个 3 个 object,你甚至能自己写个 git! (opens in a new tab)
  2. Github 博客-Git 系列 (opens in a new tab)
  3. Git 存储原理及部分实现 (opens in a new tab)
  4. 我用四个命令,总结了 Git 的所有套路 (opens in a new tab)
  5. 这才是真正的 Git——分支合并 (opens in a new tab)
  6. Git tips and tricks (opens in a new tab): 包含了一些常用的技巧。
  7. Git 的离线使用 (opens in a new tab)

提交规范

  1. Git commit message convention that you can follow! (opens in a new tab)

技巧

  1. 批量修改 Author 和 Commit Author:
:q
 
git filter-branch -f --env-filter '
CORRECT_NAME="微笑"
CORRECT_EMAIL="<wang1234561211@outlook.com>"
export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
export GIT_AUTHOR_NAME="$CORRECT_NAME"
export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
export GIT_COMMITTER_NAME="$CORRECT_NAME"
' -- --all

Git 配置

  1. push 新分支
# 推送新分支,就可以直接使用 git push了。
git config --global --add --bool push.autoSetupRemote true
  1. 友好的 date 格式
git config --global log.date "format:%Y-%m-%d %H:%M:%S"