~ubuntu-branches/ubuntu/precise/perl/precise

« back to all changes in this revision

Viewing changes to pod/perlrepository.pod

  • Committer: Bazaar Package Importer
  • Author(s): Niko Tyni
  • Date: 2011-02-06 11:31:38 UTC
  • mto: (8.2.12 experimental) (1.1.12)
  • mto: This revision was merged to the branch mainline in revision 46.
  • Revision ID: james.westby@ubuntu.com-20110206113138-lzpm3g6rur7i3eyp
Tags: upstream-5.12.3
ImportĀ upstreamĀ versionĀ 5.12.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
disk space (including the repository). A build of bleadperl takes up
21
21
about 200MB (including the repository and the check out).
22
22
 
23
 
=head1 GETTING ACCESS TO THE REPOSITORY
 
23
=head1 Getting access to the repository
24
24
 
25
 
=head2 READ ACCESS VIA THE WEB
 
25
=head2 Read access via the web
26
26
 
27
27
You may access the repository over the web. This allows you to browse
28
28
the tree, see recent commits, subscribe to RSS feeds for the changes,
34
34
 
35
35
  http://github.com/mirrors/perl
36
36
 
37
 
=head2 READ ACCESS VIA GIT
 
37
=head2 Read access via Git
38
38
 
39
39
You will need a copy of Git for your computer. You can fetch a copy of
40
40
the repository using the Git protocol (which uses port 9418):
52
52
This clones the repository and makes a local copy in the F<perl-http>
53
53
directory.
54
54
 
55
 
=head2 WRITE ACCESS TO THE REPOSITORY
 
55
=head2 Write access to the repository
56
56
 
57
57
If you are a committer, then you can fetch a copy of the repository
58
58
that you can push back on with:
95
95
The C<fetch> command just updates the C<camel> refs, as the objects
96
96
themselves should have been fetched when pulling from C<origin>.
97
97
 
98
 
=head2 A NOTE ON CAMEL AND DROMEDARY
 
98
=head2 A note on camel and dromedary
99
99
 
100
100
The committers have SSH access to the two servers that serve
101
101
C<perl5.git.perl.org>. One is C<perl5.git.perl.org> itself (I<camel>),
118
118
reach the sysadmins in #p5p on irc.perl.org or via mail to
119
119
C<perl5-porters@perl.org>
120
120
 
121
 
=head1 OVERVIEW OF THE REPOSITORY
 
121
=head1 Overview of the repository
122
122
 
123
123
Once you have changed into the repository directory, you can inspect
124
124
it.
184
184
 
185
185
  % git checkout blead
186
186
 
187
 
=head2 FINDING OUT YOUR STATUS
 
187
=head2 Finding out your status
188
188
 
189
189
The most common git command you will use will probably be
190
190
 
262
262
it carefully, many questions are answered directly by the git status
263
263
output.
264
264
 
265
 
=head1 SUBMITTING A PATCH
 
265
=head1 Submitting a patch
266
266
 
267
267
If you have a patch in mind for Perl, you should first get a copy of
268
268
the repository:
441
441
As you craft each patch you intend to submit to the Perl core, it's
442
442
important to write a good commit message.
443
443
 
444
 
Your commit message should start with a description of the problem that
445
 
the patch corrects or new functionality that the patch adds.
 
444
The first line of the commit message should be a short description and
 
445
should skip the full stop. It should be no longer than the subject
 
446
line of an E-Mail, 50 characters being a good rule of thumb.
 
447
 
 
448
A lot of Git tools (Gitweb, GitHub, git log --pretty=oneline, ..) will
 
449
only display the first line (cut off at 50 characters) when presenting
 
450
commit summaries.
 
451
 
 
452
The commit message should include description of the problem that the
 
453
patch corrects or new functionality that the patch adds.
446
454
 
447
455
As a general rule of thumb, your commit message should let a programmer
448
456
with a reasonable familiarity with the Perl core quickly understand what
554
562
 
555
563
=back
556
564
 
557
 
=head1 ACCEPTING A PATCH
 
565
=head1 Accepting a patch
558
566
 
559
567
If you have received a patch file generated using the above section,
560
568
you should try out the patch.
615
623
  % git branch -D experimental
616
624
  Deleted branch experimental.
617
625
 
618
 
=head1 CLEANING A WORKING DIRECTORY
 
626
=head1 Cleaning a working directory
619
627
 
620
628
The command C<git clean> can with varying arguments be used as a
621
629
replacement for C<make clean>.
637
645
 
638
646
If you want to cancel one or several commits, you can use C<git reset>.
639
647
 
640
 
=head1 BISECTING
 
648
=head1 Bisecting
641
649
 
642
650
C<git> provides a built-in way to determine, with a binary search in
643
651
the history, which commit should be blamed for introducing a given bug.
712
720
C<git help bisect> has much more information on how you can tweak your
713
721
binary searches.
714
722
 
715
 
=head1 SUBMITTING A PATCH VIA GITHUB
 
723
=head1 Submitting a patch via GitHub
716
724
 
717
725
GitHub is a website that makes it easy to fork and publish projects
718
726
with Git. First you should set up a GitHub account and log in.
738
746
  % git push origin orange
739
747
 
740
748
The orange branch has been pushed to GitHub, so you should now send an
741
 
email (see L</SUBMITTING A PATCH>) with a description of your changes
 
749
email (see L</Submitting a patch>) with a description of your changes
742
750
and the following information:
743
751
 
744
752
  http://github.com/USERNAME/perl/tree/orange
745
753
  git@github.com:USERNAME/perl.git branch orange
746
754
 
747
 
=head1 MERGING FROM A BRANCH VIA GITHUB
 
755
=head1 Merging from a branch via GitHub
748
756
 
749
757
If someone has provided a branch via GitHub and you are a committer,
750
758
you should use the following in your perl-ssh directory:
773
781
  % git push
774
782
 
775
783
 
776
 
=head1 TOPIC BRANCHES AND REWRITING HISTORY
 
784
=head1 Topic branches and rewriting history
777
785
 
778
786
Individual committers should create topic branches under
779
787
B<yourname>/B<some_descriptive_name>. Other committers should check
850
858
a local tag to perl.git before doing so. (Pushing unannotated tags is
851
859
not allowed.)
852
860
 
853
 
=head1 COMMITTING TO MAINTENANCE VERSIONS
 
861
=head1 Committing to maintenance versions
854
862
 
855
 
Maintenance versions should only be altered to add critical bug fixes.
 
863
Maintenance versions should only be altered to add critical bug
 
864
fixes, see L<perlpolicy>.
856
865
 
857
866
To commit to a maintenance version of perl, you need to create a local
858
867
tracking branch:
868
877
B<-x> option to C<git cherry-pick> in order to record the SHA1 of the
869
878
original commit in the new commit message.
870
879
 
871
 
=head1 GRAFTS
 
880
=head1 Grafts
872
881
 
873
882
The perl history contains one mistake which was not caught in the
874
883
conversion: a merge was recorded in the history between blead and