使用标签标记特定的 Git 提交
Git 允许您将标签附加到提交,以标记项目历史中的特定位置,便于将来引用。 例如,您可以为对应发布版本的提交添加标签,而不是 创建分支来捕获发布快照。
在 PyCharm 中,您可以在 Git 分支 弹出窗口中对标签执行操作。 要调用它,请在主窗口标题栏中点击带有当前检出分支名称的 Git 小部件:

您还可以在 Git 工具窗口 Alt+9 的 分支窗格 中管理标签。

为提交添加标签
打开 Git 工具窗口 Alt+9 ,并切换到 日志 选项卡。
定位所需的提交,右键点击它,并从上下文菜单中选择 新建标签。
输入新标签的名称,然后点击 确定。 该标签将显示在 Git 工具窗口 Alt+9 的 日志 选项卡中:

为提交添加附注标签
附注标签的元数据包含创建它们的用户的姓名,因此您可以检查是谁添加的。
在主菜单中,转到 。
在打开的 标签 对话框中,在 Git 根目录 下,选择要添加标签的本地存储库路径,并指定新标签的名称。
在 提交 字段中,指定要添加标签的提交。 您可以输入提交哈希,或使用表达式,例如:
<branch>~<number of commits backwards between the latest commit (HEAD) and the required commit>。 有关更多信息,请参阅 Git 提交命名约定。在 消息 字段中输入注释以创建一个 附注 标签(如果为空,将创建常规标签)。
点击 创建标签。
重新分配现有标签
如果您将标签放在了错误的提交上,并希望重新分配它(例如用于指示发布版本的提交),请执行以下操作:
在主菜单中,转到 Git | 新建标签。
在 标签 对话框的 标签名称 字段中,指定要重新分配的现有标签名称。
选择 强制 选项。
在 提交 字段中,指定要将标签移动到的提交,并点击 创建标签。
跳转到带标签的提交
打开 Git 工具窗口 Alt+9 ,并切换到 日志 选项卡。
在工具栏上点击 转到哈希/分支/标签 图标
,或按 Ctrl+F。

输入标签名称(代码补全会在您键入时建议标签名称),然后按 Enter。
检出带标签的提交
假设您使用标签标记了对应发布版本的提交,现在想要查看该时间点的项目快照。 您可以通过检出带标签的提交来完成此操作。 执行以下任一操作:
定位您要检出的带标签的提交,右键点击它,并从上下文菜单中选择 检出修订。
在 Git 工具窗口 Alt+9 中,打开 标签 节点,选择所需的标签,并在上下文菜单的操作列表中选择 检出。
调用分支弹出窗口 ,点击 检出标签或修订 并输入标签名称( PyCharm 会在您键入时提供匹配的标签和修订列表)。
调用分支弹出窗口 ,打开 标签 节点,选择所需的标签,并在上下文菜单的操作列表中选择 检出。
请注意,此操作会导致处于 分离的 HEAD 状态,这意味着您不再位于任何分支上。 您可以使用此快照进行检查和实验。 但是,如果您想要在此快照之上提交更改,则需要 创建分支。
获取标签
您可以设置 Git 在从上游 获取更改 时获取标签的方式。
按 Ctrl+Alt+S 打开设置,然后选择 。
选择首选的选项:
自动 :遵循配置文件中指定的获取规则。
例如,您可以为不同的远程指定不同的获取规则。 请参阅 git fetch 文档,了解可用选项。
如果未指定获取规则,则默认情况下,Git 仅获取指向从远程存储库下载的提交的标签。
同步 :在获取更新时,移除远程上已不存在的任何本地标签(等同于
git fetch --prune-tags)。始终 :在获取更新时,始终从远程获取所有标签(等同于
git fetch --tags)。从不 :不获取指向从远程存储库下载的提交的标签(等同于
git fetch --no-tags)。
推送标签
默认情况下,执行 push 操作时,不会将标签发送到远程存储库。
要推送特定标签,请调用 分支弹出窗口或 Git 工具窗口 Alt+9 ,打开 标签 节点,选择所需的标签,并在上下文菜单的操作列表中选择 推送到 origin。
要与提交一起推送多个标签:
在 推送提交 对话框中,选中左下角的 推送标签 复选框。

在下拉菜单中,选择要推送的标签:
如果您希望推送所有标签(包括不属于您即将推送的所选分支的标签),请选择 全部 (等同于
push --tags)。如果您希望仅推送属于您即将推送的所选分支的标签,请选择 当前分支 (等同于
push --follow-tags)。
点击 推送。