发布流程#

  • 设置发布变量:

    export VERSION=<版本号> export PREVIOUS=<上一个版本号> export ORG=”networkx” export REPO=”networkx”

    如果这是一个预发布版本:

    export NOTES=”doc/release/release_dev.rst”

    如果这是正式发布:

    export NOTES=”doc/release/release_${VERSION}.rst” git rm doc/release/release_dev.rst

  • 自动生成发布说明:

    changelist \({ORG}/\){REPO} networkx-\({PREVIOUS} main --version \){VERSION} –out ${NOTES} –format rst

  • 编辑 doc/_static/version_switcher.json 以添加发布内容,将键值对 "preferred": true 移动到最新的稳定版本,并提交更改。

  • 更新 networkx/__init__.py 中的 __version__

  • 提交更改:

    git add networkx/__init__.py \({NOTES} doc/_static/version_switcher.json git commit -m "指定 \){VERSION} 版本发布”

  • 在git中将版本号作为标签添加:

    git tag -s networkx-\({VERSION} -m "签名 \){VERSION} 标签”

  • 将新的元数据推送到github:

    git push –tags origin main

    (其中 origingithub.com:networkx/networkx 仓库的名称。)

  • 查看github发布页面:

  • 更新网页文档: 文档保存在一个单独的仓库中:networkx/documentation

    • 等待CI服务部署到GitHub Pages

    • 将您的分支与远程仓库同步: git pull

    • 复制CI服务构建的文档。 假设您在 documentation 仓库的顶层目录下:

      # FIXME - 使用 eol_banner.html cp -a latest ../networkx-\({VERSION} git reset --hard <上一个发布的提交> mv ../networkx-\){VERSION} . rm -rf stable cp -rf networkx-\({VERSION} stable git add networkx-\){VERSION} stable git commit -m “添加 ${VERSION} 文档” git push # 强制推送—请谨慎!

  • 更新 networkx/__init__.py 中的 __version__

  • 提交并推送更改:

    git add networkx/__init__.py git commit -m “提升发布版本号” git push origin main

  • 更新网站首页: 网页保存在一个单独的仓库中:networkx/website

    • 将您的分支与远程仓库同步: git pull 。 如果您的分支不同步,尝试运行 make github 会导致问题。

    • 更新 build/index.html

    • 编辑 build/_static/docversions.js 并提交更改。

    • 将更改推送到仓库。

    • 使用 make github 进行部署。

  • 在邮件列表上发布发布说明。