我每天使用的 11 个 Git 命令

2025-05-24

我每天使用的 11 个 Git 命令

刚开始工作的时候,我总是担心丢失代码修改。有时,我会把代码复制到文本文件中,以确保不会遗漏任何内容。

这不是一个好的做法。如果你知道如何正确使用 git,你就不会有这些疑虑。

Git 拥有保障您安全所需的一切,甚至更多。

让我们开始吧。

1. 签出新分支

显然,我必须为开始的每项任务使用一个新分支:

git checkout -b <new_branch_name>
Enter fullscreen mode Exit fullscreen mode

此命令创建一个新分支并自动将其设置为活动分支。

2. 选择要提交的文件

这是我少数喜欢 GUI 的情况之一。在 VS Code(或任何其他更好的 IDE/文本编辑器)中,你可以轻松查看更新的文件,并选择要包含在提交中的文件。

但如果您想使用 CLI 来执行此操作:

git add .
Enter fullscreen mode Exit fullscreen mode

此命令将暂存所有更改的文件。

如果您想选择单个文件:

git add <path/to/file>
Enter fullscreen mode Exit fullscreen mode

3. 提交

暂存一些文件后,您需要提交它们:

git commit -m "Some changes"
Enter fullscreen mode Exit fullscreen mode

如果您打开了一些不允许您进行提交的预提交规则(例如 linting),您可以通过传递 --no-verify 标志来覆盖它们:

git commit -m "Some changes" --no-verify
Enter fullscreen mode Exit fullscreen mode

4. 恢复所有更改

有时我会尝试修改代码。过了一会儿,我意识到这不是正确的路径,我需要撤消所有更改。

一个简单的命令是:

git reset --hard
Enter fullscreen mode Exit fullscreen mode

5. 查看最新提交

我可以通过输入以下命令轻松查看我的分支上发生的情况:

git log
Enter fullscreen mode Exit fullscreen mode

我可以看到提交的哈希、消息、作者和日期。

6. 从远程分支拉取更改

当我检出一个已经存在的分支(通常是主分支或开发分支)时,我需要获取并合并最新的更改。

有一个简写形式:

git pull
Enter fullscreen mode Exit fullscreen mode

有时,如果您位于新创建的分支之一,则还需要指定原始分支:

git pull origin/<branch_name>
Enter fullscreen mode Exit fullscreen mode

7. 撤消本地未推送的提交

我提交了。糟糕!这里出了点问题。我得再做一点修改。

不用担心:

git reset --soft HEAD~1
Enter fullscreen mode Exit fullscreen mode

此命令将恢复您的上次提交并保留您所做的更改。

HEAD~1意味着你的头脑指向比当前提交更早的一次提交 - 这正是你想要的。

8. 撤销已推送的提交

我做了一些修改并推送到远程。然后,我意识到这不是我想要的。

为此,我使用:

git revert <commit_hash>
Enter fullscreen mode Exit fullscreen mode

请注意,这将在您的提交历史记录中显示。

9. 存储我的更改

我正在开发该功能,我的队友要求我进行紧急代码审查。

我显然不想丢弃我的更改,也不想提交它们。我不想创建一堆毫无意义的提交。

我只想检查他的分支并返回我的工作。

要做到这一点:

// stash your changes
git stash
// check out and review your teammate's branch
git checkout <your_teammates_branch>
... code reviewing
// check out your branch in progress
git checkout <your_branch>
// return the stashed changes
git stash pop
Enter fullscreen mode Exit fullscreen mode

pop听起来很熟悉?没错,它的工作原理就像堆栈一样。

意思是,如果你连续两次执行 git stash 而中间没有执行 git stash pop,它们就会相互堆叠。

10. 将分支重置为远程版本

我把一些事情搞砸了。一些提交出错了,一​​些 npm 安装也出错了。

无论我做什么,我的分支机构都不再运作良好。

远程版本运行良好。让我们也实现它吧!

git fetch origin
git reset --hard origin/<branch_name>
Enter fullscreen mode Exit fullscreen mode

11. 从其他分支挑选提交

有时,我想应用其他分支的提交。为此,我使用:

git cherry-pick <commit_hash> 
Enter fullscreen mode Exit fullscreen mode

如果我想选择一个范围:

git cherry-pick <oldest_commit_hash>^..<newest_commit_hash>
Enter fullscreen mode Exit fullscreen mode

结论

说实话,我并不是每天都使用所有这些命令 - 但我确实经常使用它们。

我更喜欢 CLI,因为我们永远无法用 GUI 涵盖所有选项。

另外,你会发现大多数教程都只使用 CLI。如果你不熟悉 CLI,理解起来会很困难。

我在这里介绍了基础知识,但无论您需要做什么,只需谷歌一下即可。

我确信你会很容易找到答案。

文章来源:https://dev.to/domagojvidovic/11-git-commands-i-use-every-day-43eo
PREV
14 个 VS Code 快捷键,助您提升工作效率
NEXT
代码审查的艺术