代码之家  ›  专栏  ›  技术社区  ›  StevieD

公开github回购会导致Dist::Zilla出现问题

  •  1
  • StevieD  · 技术社区  · 7 年前

    我有一个模块,用 Dist::Zilla . 我有 分布:Zilla

    然而,一旦我公开了回购协议,我就开始在构建过程中出错。特别是 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 repos了吗?这是完整的分布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]
    
    1 回复  |  直到 7 年前
        1
  •  4
  •   amon    7 年前

    [Bugtracker] [GitHub::Meta] . 选择一个或另一个。

    至于版本号管理,请注意 [Git::NextVersion]

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

    对于Dist::Zilla,公共GitHub repos应该不是问题这正是大多数dzil发行版使用的设置。但是多个插件之间的交互会导致很难找到bug,特别是因为插件的顺序很重要。它可以帮助您按插件运行的阶段组织插件,并测试在删除可选插件后问题是否仍然存在。最好还是从一个简单的开始 dist.ini