ADD: improve perl documentation

This commit is contained in:
Dominik Meyer 2018-09-13 22:06:59 +02:00
parent 50e5ccdfe1
commit 3f88504d2b
No known key found for this signature in database
GPG Key ID: B4C312B600606B64

View File

@ -7,6 +7,88 @@ use DateTime::TimeZone;
use Data::Dumper; use Data::Dumper;
use Git::LowLevel; use Git::LowLevel;
=head1 DESCRIPTION
Git::IssueManager is a Perl Module for using git as an issue store creating a
B<distributed issue management system>.
It uses the Git::LowLevel Module to store issues in a B<issue> branch using trees
and blobs.
=head2 EXAMPLE
use Git::IssueManager;
my $manager = Git::IssueManager->new(repository=>Git::LowLevel->new(git_dir=> "."));
if (!$manager->ready)
{
print("IssueManager not initialized yet. Please call \"init\" command to do so.");
exit(-1);
}
my @issues=$manager->list();
for my $i (@issues)
{
print $i->subject . "\n";
}
=head2 MOTIVATION
Issue management is an essential part in modern software engineering. In most cases tools
like I<jira> or I<github> are used for this task. The central nature of these tools is a large
disadvantage if you are often on the road. Furthermore if you are using I<git> for version
control you have everything available for B<distributed issue management>.
B<Advantages:>
=over 12
=item save your issues within your project
=item manage issues on the road, without internet access
=item write your own scripts for issue management
=back
B<Disadvantages:>
=over 12
=item no easy way to let users add issues without pull request yet
=item not all functions implemented yet
=back
=head2 FEATURES
=over 12
=item add issues
=item list issues
=item assign workers to an issue
=item start and close issues
=item delete issues
=back
=cut
=attr gitcmd =attr gitcmd