在本文中,我们将讨论您作为开发人员、数据科学家或产品经理应该知道的各种Git命令。并且会使用Git进行查看、删除和整理。此外,我们还将介绍如何使用Bash别名和Git编辑器配置来转义Vim并节省时间。如果您不熟悉基本的git命令,请在阅读本文之前查看我之前关于git工作流的文章。这里有10个要知道的命令和它们的一些常用标志。每个命令都链接到该命令的AtlassianBitbucket指南。查看信息首先,让我们回顾一下更改。gitdiff-查看所有本地文件更改。可以附加文件名以仅显示一个文件的更改。gitlog-查看所有提交历史。也适用于gitlog-pmy_file的文件。输入q退出。gitblamemy_file-查看谁更改了my_file中的内容和时间。gitreflog-显示本地存储库HEAD的变更日志。有助于查找丢失的文件。用git查看信息不是很混乱。相比之下,Git提供了大量选项来删除、撤消提交和文件更改。撤消信息gitreset、gitcheckout和gitrevert用于撤消对存储库所做更改的影响。这些命令可能难以理解。gitreset和gitcheckout可用于提交和单个文件。gitrevert仅用于提交级别。如果您只是处理尚未合并到协作远程工作中的本地提交,则可以使用这些命令中的任何一个。如果您正在协同工作并且需要撤消远程分支中的提交,请使用gitrevert。这些命令中的每一个都可以采用多个选项。以下是常见用途:gitreset--hardHEAD--丢弃自最近一次提交以来的暂存和非暂存更改。指定不同于HEAD的提交以丢弃自该提交以来的更改。--hard指定分阶段和非分阶段更改。确保您不会放弃协作者所依赖的远程分支的提交!gitcheckoutmy_commit-放弃在my_commit之后所做的非暂存更改。HEAD通常用于my_commit以丢弃自最近一次提交以来对本地工作目录的更改。结帐最适合本地撤消。它不会弄乱协作者所依赖的远程分支的提交历史!如果您使用带有分支的结帐而不是提交,HEAD将切换到指定的分支并更新工作目录以匹配。这是checkout命令更常见的用法。gitrevertmy_commit-撤消my_commit中所做更改的影响。撤消更改时,还原会进行新的提交。恢复对于协作项目是安全的,因为它不会覆盖其他用户分支可能依赖的历史记录。还原是安全的有时您只想删除本地目录中未跟踪的文件。例如,您可能会运行一些代码来创建许多您在存储库中不需要的不同类型的文件。好吧,您可以瞬间清洁它们!gitclean-n--remove本地工作目录中未跟踪的文件-n标志用于不删除任何内容的空运行。使用-f标志实际删除文件。使用-d标志删除未跟踪的目录。默认情况下,未删除.gitignore未跟踪文件,但可以更改此行为。现在您了解了Git中用于撤消操作的工具,让我们看一下其他两个命令。组织信息gitcommit--amend-将阶段性更改添加到最近的提交中。如果未执行暂存,则此命令仅允许您编辑最近的提交消息。仅当您的提交未集成到远程master分支时才使用此命令!gitpushmy_remote--tags-将所有本地标签发送到远程仓库。适用于版本控制更改。如果您使用python并对构建的包进行更改,bump2version将自动为您创建标签。一旦你推送了你的标签,你就可以在你的发布中使用它们。这是我制作第一个OSSpython包的指南。关注我,确保你不会错过版本控制部分!救命,我卡在Vim里了!使用Git,有时您可能会发现自己陷入了Vim编辑器会话。例如,如果您尝试在没有提交消息的情况下提交,Vim将自动打开。如果您不了解Vim,这会有点棘手-请在StackOverflow上查看这个有超过4,000票的答案,了解如何摆脱它。变得自由!下面是使用保存文件退出Vim的四步计划:1.按i进入插入模式。2.在***行输入提交消息。3.按退出键---Esc。4.输入:x。不要忘记冒号。恭喜你,你自由了!更改默认编辑器为了完全避免使用Vim,可以更改Git中的默认编辑器。这是一些包含常用编辑器命令的文档。下面是修改Atom默认值的命令,我使用的编辑器:假设你已经安装了Atom,你现在可以修复其中的Git问题。奇妙!为Git命令创建快捷方式通过在.bash_profile中添加以下别名来为Git命令添加快捷方式。您可以根据自己的喜好调整Git命令的快捷方式。如果您没有.bash_profile,您可以使用以下命令在macOS上创建一个:然后打开它:有关.bash_profile的更多信息,请单击此处。现在,当您在终端中键入gs时,它与键入gitstatus相同。请注意,您可以在快捷方式后在终端中输入其他标志。您还可以创建Git别名,但这些要求您在快捷命令之前键入git。这是多余的。总结在本文中,您了解了一些关键的Git命令并配置了您的环境以节省时间。现在您已经掌握了Git和GitHub的基础知识。准备好下一步了吗?查看此BitbucketGit教程以了解更多信息。探索Git分支的交互式指南。分支可能很难理解,但绝对值得一看。玩耍、学习、向他人解释不同之处。希望这篇Git和GitHub介绍对您有所帮助。如果可以,请将它分享到您最喜欢的社交媒体上,以便其他人也能找到它。
