App-WordPressTools
view release on metacpan or search on metacpan
lib/App/WordPressTools/Contributing.pod view on Meta::CPAN
=head2 Get the Code
=over
=item 1.
Clone the repository.
If you use GitHub, fork wp-tools and then clone your fork:
git clone git@github.com:$GITHUB_USERNAME/wp-tools.git
If you don't use GitHub, you can clone the official repository:
git clone https://github.com/bluehost/wp-tools.git
=item 2.
Install L<Dist::Zilla>.
cpanm Dist::Zilla
=item 3.
Install the Perl dependencies using Dist::Zilla:
dzil authordeps --missing | cpanm
dzil listdeps --author --develop --missing | cpanm
=item 4.
Make sure the tests pass:
dzil test
=back
=head2 Repository Structure
=over
=item lib
Contains source code and source documentation in the form of Perl modules and POD files.
=item script
Contains executable source code.
=item t
Contains test scripts.
=item maint
Contains release management scripts.
=item CONTRIBUTING.md, LICENSE, README.md
Rendered documentation. Do B<NOT> modify these files directly because their contents are built from other files. You may
commit changes to these files as long as their source files were updated.
=item Changes
Lists releases and associated changes.
=back
=head2 Branch Layout
=over
=item master
This is the shared development branch. It may contain accepted but unreleased commits, but it does not include anything
that is known to be broken or a WIP -- that's what topics are for. Topics should be branched from master.
=item release
The release branch tracks master but lags behind. The tip of this branch always points to the latest release commit, so
this branch is the B<stable> branch.
=item topic/*
Topics are branched from master and may contain experimental and broken code. They are for work in progress. Topics may
be rebased and cleaned up for eventual merging back into master. Topics may be namespaced "topic/" or not.
=item dist
The dist branch includes releases built for distribution to the CPAN. This branch shares no commits with any other
branch and is maintained by release management scripts.
=item solo
The solo branch includes releases built as standalone scripts (for curl installation). This branch shares no commits
with any other branch and is maintained by release management scripts.
=back
=head2 Commit Guidelines
In general, follow the L<Commit Guidelines|https://git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project#Commit-Guidelines>
from the L<Pro Git|https://git-scm.com/book/en/v2> book. In particular:
=over
=item *
Clean up your branch.
Remember that your topic branch is yours. You can and should rewrite its history so that its history is clean and
straightforward without any "fixup" commits. These commands can help you clean up your history:
git commit --amend
git rebase --interactive
git cherry-pick
=item *
Follow the same code style already used in the file(s) you're editing.
( run in 1.180 second using v1.01-cache-2.11-cpan-39bf76dae61 )