10个我们离不开的 Git 技巧

Opensource.com 社区成员分享他们最喜欢的 Git 技巧,以节省时间或防止错误。
6 位读者喜欢这篇文章。
Working from home at a laptop

Opensource.com

Git 技巧数不胜数,这是一件好事,因为你永远不会嫌多。如果你每天都使用 Git,那么你找到的每一个技巧、诀窍和快捷方式都有可能节省时间和精力。我向 Opensource.com 社区成员询问了他们最喜欢的 Git 技巧。 这就是它们!

add

git add --patch(简写为 -p)命令启动对更改块的交互式审查,您可以添加这些更改块,将其拆分为更小的块或忽略(以及其他操作)。 这样,您可以确保将更改限制为特定的提交。

Kevin Thull

我使用 git add -p 在提交之前一次一块地审查更改。 它可以让你检查是否忘记删除一些粗略的想法、零散的评论或其他你不应该提交的东西。

Ryan Price

amend

Git 选项 --amend 是一种有用的替代方法,可以替代创建多个提交,然后通过交互式 rebase 将它们压缩为一个提交。 我喜欢你可以不断修改你的第一个提交,以根据需要添加其他更改。

Ashley Hardin

bisect

我知道我搞砸了一些东西,但我不知道是什么时候。 这就是 git-bisect 的用途。

在之前的生活中,我是一家位于芝加哥郊外的机构的 Drupal 和 WordPress 的后端开发人员。 我有多个客户站点在同时进行,像弹球一样来回切换。 偶尔,有人会在我的代码中发现一个未记录的功能,而且由于所有不同的客户站点而导致记忆模糊,git-bisect 会派上用场,帮助我找到罪魁祸首。

Eric Michalsen

blame

git blame 命令的名称相反,我不会用它来指责他人。 当你接管你没有初始化的存储库时,它非常有用。 您可以看到何时完成某些更改,并希望看到它们背后的提交消息。 这是一个很棒的故障排除工具。

Miriam Goldman

checkout

我使用 git checkout - 切换到上一个分支。 它便于从功能分支切换回主开发分支,然后再切换回来。

Kevin Thull

diff

我喜欢 git diff --staged 命令,可以在提交之前查看所有暂存的更改。

Kevin Thull

status

当工作时,我似乎会接触到很多文件,而 git status 是救命稻草。 通过 git status 了解工作目录和暂存区的状态,帮助我学习了 Git 中的那些核心概念,并确保我的所有工作都已提交!

Ravi Lachhman,Shipa 公司的 Field CTO

squash (rebase -i)

我喜欢使用 此命令 将几个提交压缩为一个提交。 首先使用 git rebase -i HEAD~#,其中 # 是要压缩的提交数。 在每个应该成为其上方提交一部分的提交上将 pick 更改为 squash。 然后根据需要编辑您的提交消息。 它使提交历史非常整洁。

Ryan Marks

update-index

谨慎使用此命令!

$ git update-index --assume-unchanged path/to/file

它便于将一个有本地更改的文件标记为未更改,或者只是那些不断发誓说它已被更改的讨厌文件之一,即使你绝对没有对它做任何事情。

Kevin Thull

worktree

我最喜欢的功能之一是 git-worktree 功能,它可以管理 repo 中不同分支的同时检出,而无需对文件进行批量复制。

这是一个例子

$ git worktree add ../feature-branch feature-branch

KURT W.K.

总结

现在是时候提出您自己最喜欢的技巧了。 哪些 Git 命令可以节省您的时间或防止错误? 您在工作中会将哪些技巧传授给新的 Git 用户? 让我们知道,因为我们本周庆祝 Git 诞生 17 周年!

接下来阅读什么
AmyJune headshot
AmyJune 是一位经验丰富的社区经理、导师、公共演讲者和包容性倡导者。 虽然她的根在 Drupal 中,但她也定期为 Linux 和可访问性社区做出贡献。

1 条评论

提高我们 Git CLI 性能的不错资源。 感谢提供的精彩信息。 😎

Creative Commons License本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
© . All rights reserved.