当我标记并推送到 pypi 后需要将提交添加到同一发布版本时,我该怎么办?
What do I do when i need to add commits to the same release version after i tagged and pushed to pypi?
我正在使用设置工具和 setuptools_scm。
我用的version_scheme是release-branch-semver.
假设我创建了一个分支 release-0.1.0 并且有 3 个提交。
我完成了,然后我从 release-0.1.0 的头部创建了一个标签 0.1.0
我将标签和分支都推送到我的 github 存储库。然后我用twine打包python库上传到pypi为0.1.0
然后我从 main 分支出来制作一个 release-0.1.1 并开始工作。
几天后,我意识到 0.1.0 有一个严重的错误。所以我签回 release-0.1.0 并向本地分支添加了 1 个提交。
那我现在该怎么办?
我绝对不希望 pypi 上的错误版本 0.1.0 保持原样。我已经在做 0.1.1 了。因此,在主分支之外创建一个修补程序作为 0.1.1 也很奇怪。
我可以替换pypi中的0.1.0吗?我应该删除 github 远程仓库上的 0.1.0 标签吗?
如果您向 PyPI 发布了不应被任何人使用的版本,您可以 yank 该版本。这意味着它不会列在项目页面上,并且在搜索兼容版本时不会被 pip
等安装程序考虑(虽然它不会被删除并且可以通过 ==
强制安装) .
致力于 0.1.1
意味着这仅包括 0.1.0
的修复。所以当你发现那个严重的错误时,你可以将它包含在 0.1.1
修复中并发布它。然后您可以继续 0.1.2
.
上的剩余修复
不应修改现有版本,因此,当您完成一个版本时,没有理由保留该版本分支。通常,您会在主分支上标记 x.y.z
版本,然后从那里构建。
我正在使用设置工具和 setuptools_scm。
我用的version_scheme是release-branch-semver.
假设我创建了一个分支 release-0.1.0 并且有 3 个提交。
我完成了,然后我从 release-0.1.0 的头部创建了一个标签 0.1.0
我将标签和分支都推送到我的 github 存储库。然后我用twine打包python库上传到pypi为0.1.0
然后我从 main 分支出来制作一个 release-0.1.1 并开始工作。
几天后,我意识到 0.1.0 有一个严重的错误。所以我签回 release-0.1.0 并向本地分支添加了 1 个提交。
那我现在该怎么办?
我绝对不希望 pypi 上的错误版本 0.1.0 保持原样。我已经在做 0.1.1 了。因此,在主分支之外创建一个修补程序作为 0.1.1 也很奇怪。
我可以替换pypi中的0.1.0吗?我应该删除 github 远程仓库上的 0.1.0 标签吗?
如果您向 PyPI 发布了不应被任何人使用的版本,您可以 yank 该版本。这意味着它不会列在项目页面上,并且在搜索兼容版本时不会被 pip
等安装程序考虑(虽然它不会被删除并且可以通过 ==
强制安装) .
致力于 0.1.1
意味着这仅包括 0.1.0
的修复。所以当你发现那个严重的错误时,你可以将它包含在 0.1.1
修复中并发布它。然后您可以继续 0.1.2
.
不应修改现有版本,因此,当您完成一个版本时,没有理由保留该版本分支。通常,您会在主分支上标记 x.y.z
版本,然后从那里构建。