目录

    1. 关于 Label

    在前面的文档 如何使用 python-gitlab 自动创建 GitLab Label 中,我已经阐述了 Label 可以用于简单的项目管理。

    一个团队,通常不止一个代码仓库,为了减轻沟通和学习成本,除了使用一致的工具链,还应该达成一定的基础共识。这些基础共识,促使大家达成最佳的实践方式。同一个大项目下,所有子项目使用同一套 Label 就是其中之一。

    2. 如何复制其他项目的 Label

    在开源社区中,会有一些在领域非常有影响力的项目。参与并跟随社区的实践,是一个不错的选择。我们可以在 settings/tokens 页面,创建一个 Token 用于同步其他项目的标签。这里对 Token 的权限没有要求,不必勾选任何选项。

    • 安装 PyGithub
    pip install PyGithub==1.50
    
    • 执行下面这段脚本,替换相关变量
    # -*- coding: utf-8 -*-
    from github import Github
    
    g = Github("xxxTokenxxx")
    
    u_repo = g.get_repo("kubernetes/kubernetes")
    my_repo = g.get_repo("shaowenchen/test")
    
    labels = u_repo.get_labels()
    
    for label in labels:
        try:
            my_repo.create_label(label.name, label.color)
        except Exception as e:
            print(e)
    

    3. 参考