PyCharm 2025.3 Help

使用标签标记特定的 Git 提交

Git 允许您将标签附加到提交,以标记项目历史中的特定位置,便于将来引用。 例如,您可以为对应发布版本的提交添加标签,而不是 创建分支来捕获发布快照。

在 PyCharm 中,您可以在 Git 分支 弹出窗口中对标签执行操作。 要调用它,请在主窗口标题栏中点击带有当前检出分支名称的 Git 小部件:

分支弹出窗口中的标签节点

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

分支窗格

为提交添加标签

  1. 打开 Git 工具窗口 Alt+9 ,并切换到 日志 选项卡。

  2. 定位所需的提交,右键点击它,并从上下文菜单中选择 新建标签

  3. 输入新标签的名称,然后点击 确定。 该标签将显示在 Git 工具窗口 Alt+9日志 选项卡中:

    带标签的提交

为提交添加附注标签

附注标签的元数据包含创建它们的用户的姓名,因此您可以检查是谁添加的。

  1. 在主菜单中,转到 Git | 新建标签

  2. 在打开的 标签 对话框中,在 Git 根目录 下,选择要添加标签的本地存储库路径,并指定新标签的名称。

  3. 提交 字段中,指定要添加标签的提交。 您可以输入提交哈希,或使用表达式,例如: <branch>~<number of commits backwards between the latest commit (HEAD) and the required commit>。 有关更多信息,请参阅 Git 提交命名约定。

  4. 消息 字段中输入注释以创建一个 附注 标签(如果为空,将创建常规标签)。

  5. 点击 创建标签

重新分配现有标签

如果您将标签放在了错误的提交上,并希望重新分配它(例如用于指示发布版本的提交),请执行以下操作:

  1. 在主菜单中,转到 Git | 新建标签

  2. 标签 对话框的 标签名称 字段中,指定要重新分配的现有标签名称。

  3. 选择 强制 选项。

  4. 提交 字段中,指定要将标签移动到的提交,并点击 创建标签

跳转到带标签的提交

  1. 打开 Git 工具窗口 Alt+9 ,并切换到 日志 选项卡。

  2. 在工具栏上点击 转到哈希/分支/标签 图标 ,或按 Ctrl+F

    转到哈希/分支/标签图标
  3. 输入标签名称(代码补全会在您键入时建议标签名称),然后按 Enter

检出带标签的提交

假设您使用标签标记了对应发布版本的提交,现在想要查看该时间点的项目快照。 您可以通过检出带标签的提交来完成此操作。 执行以下任一操作:

  • 定位您要检出的带标签的提交,右键点击它,并从上下文菜单中选择 检出修订

  • Git 工具窗口 Alt+9 中,打开 标签 节点,选择所需的标签,并在上下文菜单的操作列表中选择 检出

  • 调用分支弹出窗口 ,点击 检出标签或修订 并输入标签名称( PyCharm 会在您键入时提供匹配的标签和修订列表)。

  • 调用分支弹出窗口 ,打开 标签 节点,选择所需的标签,并在上下文菜单的操作列表中选择 检出

请注意,此操作会导致处于 分离的 HEAD 状态,这意味着您不再位于任何分支上。 您可以使用此快照进行检查和实验。 但是,如果您想要在此快照之上提交更改,则需要 创建分支

获取标签

您可以设置 Git 在从上游 获取更改 时获取标签的方式。

  1. Ctrl+Alt+S 打开设置,然后选择 版本控制 | Git | 获取标签

  2. 选择首选的选项:

    • 自动 :遵循配置文件中指定的获取规则。

      例如,您可以为不同的远程指定不同的获取规则。 请参阅 git fetch 文档,了解可用选项。

      如果未指定获取规则,则默认情况下,Git 仅获取指向从远程存储库下载的提交的标签。

    • 同步 :在获取更新时,移除远程上已不存在的任何本地标签(等同于 git fetch --prune-tags)。

    • 始终 :在获取更新时,始终从远程获取所有标签(等同于 git fetch --tags)。

    • 从不 :不获取指向从远程存储库下载的提交的标签(等同于 git fetch --no-tags)。

推送标签

默认情况下,执行 push 操作时,不会将标签发送到远程存储库。

要推送特定标签,请调用 分支弹出窗口Git 工具窗口 Alt+9 ,打开 标签 节点,选择所需的标签,并在上下文菜单的操作列表中选择 推送到 origin

要与提交一起推送多个标签:

  1. 推送提交 对话框中,选中左下角的 推送标签 复选框。

    推送提交对话框中的推送标签选项
  2. 在下拉菜单中,选择要推送的标签:

    • 如果您希望推送所有标签(包括不属于您即将推送的所选分支的标签),请选择 全部 (等同于 push --tags)。

    • 如果您希望仅推送属于您即将推送的所选分支的标签,请选择 当前分支 (等同于 push --follow-tags)。

  3. 点击 推送

删除标签

  • 定位带标签的提交,右键点击它,并从上下文菜单中选择 标签 <tag_name> | 删除

  • Git 工具窗口 Alt+9 中,打开 标签 节点,选择所需的标签,并在上下文菜单的操作列表中选择 删除

  • 调用分支弹出窗口 ,打开 标签 节点,选择所需的标签,并在上下文菜单的操作列表中选择 删除

最后修改日期: 2025年 12月 2日