1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
<?xml version='1.0'?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
]>
<chapter id="genome-Contribute">
<title>Contribute</title>
<para>We're excited that Genome has become a community project! There are a few things to know regarding Genome community participation</para>
<section id="genome-ContributeLicensing">
<title>Licensing</title>
<para>
All Genome source and pre-built binaries are provided under the GNU General Public License, version 2
</para>
</section>
<section id="genome-ContributeDesign">
<title>Design Axiom</title>
<para>The Genome framework really tries to delegate as much functionality as it
can to tools that are invented to do a particular function. That said,
any code contributed to glue tools together should be as minimal as possible
to get the job done.
</para>
</section>
<section id="genome-ContributeCommunity">
<title>Community</title>
<para>Now that you're ready to be an active community member, here are a few directions to get you started.</para>
<section id="genome-ContributeCommunityFriendly">
<title>Please Be Friendly</title>
<para>
We strongly encourage everyone participating in the Genome community to be friendly
and courtious toward other community members. Of course, being courteous is not the
same as failing to constructively disagree with each other, but it does mean that we
should be respectful of each other when enumerating the 42 technical reasons that a
particular proposal may not be the best choice. There's never a reason to be antagonistic
or dismissive toward anyone who is sincerely trying to contribute to a discussion
</para>
</section>
<section id="genome-ContributeCommunityDiscuss">
<title>Community Communication</title>
<para>
The best way to participate in the community is to use the mailing list and/or the IRC channel.
The mailing list is <ulink url="mailto:genome-list@redhat.com"><emphasis>genome-list@redhat.com</emphasis></ulink>
and the IRC channel is <userinput>#genome</userinput> on <userinput>irc.freenode.net</userinput>.
</para>
</section>
</section>
<section id="genome-ContributeWorkWithCode">
<title>Working With The Code</title>
<para>If you're not familiar with the Git source code management tool, do yourself a favor and take time
to get over the learning curve. It's bliss once you 'get it'
</para>
<section id="genome-ContributeCodeCheckout">
<title>Checkout The Code</title>
<para>
Developer Checkout URI:
<screen>
ssh://git.fedorahosted.org/git/genome
</screen>
Anonymous Checkout URI:
<screen>
git://git.fedorahosted.org/git/genome
or
http://git.fedorahosted.org/git/genome
</screen>
</para>
<para>
The Genome project code is seperated into several Git repositories. The code repositories are granular
so that the repositories are small and easy to work with. We have sepearted core tooling, core documentation, puppet configuration
manifests, third party tool extensions, application code, and website into their respective Git repositories. When you clone the
Git repository from fedorahosted.org/git/genome, that is actually a supermodule, which references all the git repositories hosted on
<ulink url="http://gitorious.org">gitorious.org</ulink>.
If you do want to get use get all the Genome code at once, you can use the fedorahosted.org/git/genome URL.
<screen>
# Clone the Genome supermodule
git clone git://git.fedorahosted.org/git/genome
# Move into the cloned supermodule
cd genome
# Then initialize the submodules
git submodule init
# Then do the actual cloning of the remote submodules, if you already have them checked out, this will update the submodules locally
git submodule update
</screen>
</para>
<para>
If you want to work with a specific Git repository, you can review the <ulink url="http://gitorious.org/projects/genome">gitorious genome project</ulink>
and then use the clone urls listed for each Git repository under the project. For example, if I want to clone the Genome tools
repository I would go to http://gitorious.org/projects/genome/repos/tools and the choose a clone URL.
<screen>
# Clone the tools git repository
git clone git://gitorious.org/genome/tools
</screen>
</para>
</section>
</section>
</chapter>
|