Wiki source code of Source Repositories

Version 29.2 by Thomas Mortagne on 2011/09/23 16:09

Show last authors
1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 All XWiki sources are stored in [[Git>>http://git-scm.com/]] repositories on {{scm}}GitHub{{/scm}}. XWiki is an [[OW2 project>>http://forge.objectweb.org/projects/xwiki/]], but we're using GitHub to store our sources.
6
7 You can browse the source repositories and download/clone the sources by using {{scm}}GitHub{{/scm}}.
8
9 {{info}}
10 You can also browse/search our sources using the following tools but they're currently plugged to our old Subversion repository while our sources have been moved to Git so you'll only find oldish data in there:
11 * [[Fisheye>>http://fisheye.xwiki.org]]
12 * [[SVN Search>>http://svnsearch.org/svnsearch/repos/XWIKI/search]]
13 {{/info}}
14
15 = Top Level Projects =
16
17 XWiki is not a single product, but an ecosystem of [[top-level projects>>https://github.com/xwiki]].
18
19 Here's the list of repositories (one repository per top level project) you should see if you browse the Git repositories on https://github.com/xwiki :
20
21 |=Git Repository name|=Description
22 |[[xwiki-commons>>commons:Main.WebHome]]|Technical libraries common to several other top level projects. Can be used by projects outside of the XWiki ecosystem; not related to the wiki domain.
23 |[[xwiki-eclipse>>xeclipse:Main.WebHome]]|Desktop application targeted to developers for productivity/offline editing of XWiki pages.
24 |[[xwiki-enterprise>>enterprise:Main.WebHome]]|A professional wiki with enterprise features.
25 |[[xwiki-manager>>manager:Main.WebHome]]|Manages farms of XWiki Enterprise instances.
26 |[[xwiki-office>>xoffice:Main.WebHome]]|An add-in to edit XWiki pages from MS Word.
27 |[[xwiki-platform>>platform:Main.WebHome]]|Reusable components/parts used by other top level projects, making up a wiki runtime. Uses xwiki-commons and xwiki-rendering.
28 |[[xwiki-rendering>>rendering:Main.WebHome]]|Rendering library to convert some input syntax into another output syntax. Can be used by projects outside of the XWiki ecosystem. Uses xwiki-commons.
29 |[[xwiki-watch>>watch:Main.WebHome]]|Collaborative RSS Feed Reader.
30
31 {{info}}In order to better understand the relationships between the Platform and other top level projects, check how XWiki is [[Architected>>platform:DevGuide.Architecture]].{{/info}}
32
33 {{warning}}
34 We've migrated from Subversion to Git not too long ago and the following projects have not been migrated yet and are still available on our old subversion instance at http://svn.xwiki.org/svnroot/xwiki/ :
35
36 |=Directory name|=Description
37 |[[curriki>>curriki:Main.WebHome]]|A collaborative platform to help create and share educational resources.
38 {{/warning}}
39
40 = Contrib Projects =
41
42 In addition to the Top Level Projects mentioned above (and for which only XWiki committers have the rights to commit to), we've also created an {{scm user="xwiki-contrib"}}XWiki Contrib{{/scm}} organization on GitHub where everyone could contribute easily to XWiki-related projects (If you're interested see the [[documentation for Contrib projects>>http://contrib.xwiki.org/]]).
43
44 Note that GitHub offers free hosting for open source projects for every registered user, so you don't have to ask for access to the xwiki-contrib repositories if you just want to host your own code. That said we would love for you to put your project on xwiki-contrib since it makes it easy for users/developers to find xwiki-related projects under a single location (it also makes better advertising for your own project). By using xwiki-contrib you also gain [[a wiki and a JIRA project if you want to>>http://contrib.xwiki.org/]].
45
46 = Project Structure =
47
48 == XWiki Commons Structure ==
49
50 |=Directory name|=Description
51 |xwiki-commons/xwiki-commons-pom|The top level Maven build descriptor (a.k.a POM). It's referenced by all other build modules.
52 |xwiki-commons/xwiki-commons-core|Commons libraries (JARs)
53 |xwiki-commons/xwiki-commons-tools|Build tools used to build other commons modules.
54
55 == XWiki Rendering Structure ==
56
57 See the [[Rendering Project>>rendering:Main.WebHome]].
58
59 == XWiki Platform Structure ==
60
61 |=Directory name|=Description
62 |xwiki-platform/xwiki-platform-core|All core modules (JARs, skins, extensions, Web, etc)
63 |xwiki-platform/xwiki-platform-tools|Build tools and various other misc. tools.
64
65 == XWiki Enterprise Structure ==
66
67 |=Directory name|=Description
68 |xwiki-enterprise/xwiki-enterprise-wiki|Default XWiki Enterprise XAR.
69 |xwiki-enterprise/xwiki-enterprise-database|Loads the XWiki Enterprise XAR into target databases.
70 |xwiki-enterprise/xwiki-enterprise-distribution|Generates distributions for given Servlet container and given Databases.
71 |xwiki-enterprise/xwiki-enterprise-test|Functional tests.
72 |xwiki-enterprise/xwiki-enterprise-installers|Generates generic and Windows installers based on generated distributions.
73 |xwiki-enterprise/xwiki-enterprise-web|Generates the XWiki Enterprise WAR.
74
75 = Getting Sources =
76
77 Go to {{scm}}GitHub{{/scm}}, select the repository you wish to get and follow the GitHub instructions.
78
79 Then [[build>>Community.Building]] the sources.
80
81 {{info}}
82 GitHub also offers an SVN view of Git projects. For example to checkout XWiki Enterprise you could issue:
83
84 {{code}}svn checkout http://svn.github.com/xwiki/xwiki-enterprise.git{{/code}}.
85 {{/info}}

Get Connected