【问题标题】:Taking github repo public causes problems with Dist::Zilla公开 github repo 会导致 Dist::Zilla 出现问题
【发布时间】:2019-02-06 17:36:12
【问题描述】:

我有一个使用Dist::Zilla 构建的模块。我已将 Dist::Zilla 设置为自动将更改推送到我的 GitHub 存储库。当 repo 是私有的时效果很好。

但是,一旦我将 repo 公开,我就开始在构建过程中遇到错误。具体来说,dist.ini中的这些行

[Bugtracker]
web = http://github.com/myaccount/%s/issues

如果我注释掉这些行,它会起作用。留下这些行,我得到一个错误:

Duplication of element resources.bugtracker.web at /Users/me/perl5/perlbrew/perls/perl-5.24.1/lib/site_perl/5.24.4/Dist/Zilla.pm line 595.

好的,很好,我注释掉这些行。然而,另一个问题出现了。我的构建版本号不再自动递增,并且每次尝试发布构建版本时都停留在相同的数字。

我需要使用 Dist::Zilla 更改一些配置设置,以便它可以与公共 github 存储库配合使用吗?这是完整的 dist.ini 文件:

name    = Module-Test
author  = me
license = Perl_5
copyright_holder = Me
copyright_year   = 2018

[Repository]
;[Bugtracker]
;web = http://github.com/sdondley/%s/issues
[Git::NextVersion]
[GitHub::Meta]
[PodVersion]
[PkgVersion]
[NextRelease]
[Run::AfterRelease]
run = mv Changes tmp && cp %n-%v/Changes Changes
[InstallGuide]

[PodWeaver]
[ReadmeAnyFromPod]
type = markdown
location = root
phase = release

[Git::Check]
[Git::Commit]
allow_dirty = README.mkdn
allow_dirty = Changes
allow_dirty = INSTALL
[Git::Tag]
[Git::Push]
[Run::AfterRelease / MyAppAfter]
run = mv tmp/Changes Changes

[GatherDir]
[AutoPrereqs]
[PruneCruft]
[PruneFiles]
filename = weaver.ini
filename = README.mkdn
filename = dist.ini
filename = .gitignore
[ManifestSkip]
[MetaYAML]
[License]
[Readme]
[ExtraTests]
[ExecDir]
[ShareDir]
[MakeMaker]
[Manifest]
[TestRelease]
[FakeRelease]

【问题讨论】:

    标签: perl github dist-zilla


    【解决方案1】:

    您的[Bugtracker] 条目会导致重复,因为您还通过[GitHub::Meta] 设置错误跟踪器。任选其一。

    至于版本号管理,注意[Git::NextVersion]是基于你的git标签的。确保这些标签存在于您的本地存储库中并且具有正确的格式。该插件使用类似于此的命令行调用来获取所有标签:

    git rev-list --simplify-by-decoration --pretty=%d HEAD | grep -oE 'tag: [^,)\s]+'
    

    对于 Dist::Zilla 来说,公共 GitHub 存储库应该不是问题——这正是大多数 dzil 发行版使用的设置。但是多个插件之间的交互可能导致难以追踪错误,特别是因为插件的顺序很重要。它可以帮助您按运行阶段组织插件,并在删除可选插件后测试问题是否仍然存在。最好从简单的dist.ini 开始,并在开发过程中的痛点变得明显时添加插件。

    【讨论】:

      猜你喜欢
      • 2023-04-04
      • 2014-12-26
      • 2023-03-05
      • 2022-01-17
      • 2015-09-07
      • 2012-11-01
      • 2011-05-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多