我的 Git 别名

2025-05-28

我的 Git 别名

好吧,@philnash 把我拉进这个圈子了

这篇文章的诞生源于一个要点,它本质上是我的 git 别名的复制粘贴。

我将提供我的 git 别名列表,并简单明了地解释每个别名的作用。让我们开始吧!🏁 对于 git 别名的新手,请参阅别名的官方文档。简而言之,要创建自己的别名,请使用以下 git 命令。

git config --global alias.somealias some-git-command
Enter fullscreen mode Exit fullscreen mode

在开始之前,我们先来聊聊为什么要用 git 别名吧。首先,我不知道你是怎么想的,有些 git 命令确实很难记住,而且我们是程序员,为了追求效率,我们天生就比较懒。🐢 —> 🐇

  • a = add .— 运行git add将添加所有已更改的文件作为暂存文件。
  • b = branch— 列出本地计算机上存储库的所有分支。
  • bi = bisect— 运行git bi将运行 git 的bisect来帮助您找出哪个提交有错误。
  • ci = commit -m— 这将提交一个带有您指定的消息的文件,例如git ci "awesome commit!"
  • co = checkout— 这将检出您指定的分支,例如git co my-awesome-branch
  • colast = checkout -— 运行git colast将检出您正在工作的上一个分支。
  • db = branch -D— 这将删除您指定的分支,例如git db my-not-so-awesome-branch。请注意,仅当您要删除的分支不是您当前正在处理的分支时,此操作才会有效。
  • laf = fsck --lost-found——运行git laf会跳转到git 的 lost and found 目录。我承认我很少用这个,所以可能没必要用别名,只需要专业的 Google 一下就行了。
  • last = log -1 HEAD— 运行git last将显示您的最后一次提交。
  • lc = diff HEAD^ HEAD- 将分支的头部与前一次提交进行比较。
  • pf = push --force-with-lease— 运行git pf会强制推送,但其破坏性比强制推送略小。有关—force-with-lease 与 —force的更多信息,请参阅此处。
  • psu = push --set-upstream— 当您想要第一次将分支推送到远程(通常是origin)时运行此命令,例如git psu origin my-awesome-branch
  • pr = pull --rebase— 这将使用指定的分支重新设置当前分支,例如git pr develop
  • ra = rebase --abort— 运行git ra会中止rebase操作。如果你觉得我的 rebase 操作搞砸了,就运行这个。快把我弄出去!
  • rc = rebase --continue— 运行git rc会继续执行rebase操作。通常在处理完 rebase 中的任何冲突后运行此命令。
  • remotes = remote -v— 运行git remotes显示当前为存储库配置的所有远程。
  • renb = branch -m— 当您想要重命名分支时,请运行例如git renb my-awesom-branch my-awesome-branch
  • rhh = reset --hard HEAD— 核选项。运行git rhh清除所有更改并从 开始HEAD
  • rh = reset --hard— 当您指定要重置的内容时,将执行硬重置,例如git rh HEAD~2
  • sfc = diff-tree --no-commit-id --name-only -r— 显示特定提交的文件(相对文件路径),例如
❯ git sfc HEAD                                
src/posts/any-contribution-to-open-source-is-valuable-57d3.md
src/posts/april-16th-2021-what-did-you-learn-this-week-3e72.md
src/posts/are-there-plans-for-reviewers-of-articles-we-post--42nf.md
Enter fullscreen mode Exit fullscreen mode
  • s = status -s— 运行git s会给你更简洁的状态。而不是这样
On branch post/my-git-aliases
Your branch is up to date with 'origin/post/my-git-aliases'.

Changes not staged for commit:
 (use "git add <file>..." to update what will be committed)
 (use "git checkout -- <file>..." to discard changes in working directory)

       modified: src/pages/articles/2018-08-24-my-git-aliases/index.md

no changes added to commit (use "git add" and/or "git commit -a")
Enter fullscreen mode Exit fullscreen mode

你明白了

M src/pages/articles/2018-08-24-my-git-aliases/index.md
Enter fullscreen mode Exit fullscreen mode
  • stashes = stash list— 运行会显示你存储git stashes的所有物品。例如
stash@{0}: WIP on upgrade: bff6257 Destructuring OCD...
stash@{1}: WIP on upgrade: 3d73199 Fixed LiceCap link.
stash@{2}: WIP on upgrade: c2f78g6 Update default title.
Enter fullscreen mode Exit fullscreen mode
  • unstash = stash pop— 运行会git unstash从已保存的存储列表中弹出一个存储。
  • vc = clean -dfx— 运行git vc会清理你的 git 存储库,因此 git 中不存在的所有内容都会被清除,例如node_modules不应该在存储库中的设置文件等。因此在运行此命令之前请务必小心。
  • mend = commit --amend— 运行git mend可让您修改提交。
  • trigger = commit --allow-empty -m "Trigger Build"— 创建一个空的提交。当您需要在 CI/CD 流水线中远程重启构建而不提交任何更改时,此功能非常方便。
  • alias = ! git config --get-regexp ^alias\. | sed -e s/^alias\.// -e s/\ /\ =\ /— 运行git aliases将显示你在 git 中全局配置的所有别名。

虽然它不是 Git 别名,但我也强烈建议使用GitHub CLI

照片由 Flickr 用户cindy提供

文章来源:https://dev.to/nickytonline/my-git-aliases-5dea
PREV
如何解决任何算法
NEXT
🔥 适用于 NextJS 项目的 12 个顶级库 🏆 1. Trigger.dev