]> de.git.xonotic.org Git - xonotic/xonotic.wiki.git/blob - Repository_Access.textile
(Commit created by redmine exporter script from page "Repository_Access" version 21)
[xonotic/xonotic.wiki.git] / Repository_Access.textile
1 h1. Repository Access
2
3 The repository is accessed using git.
4
5 h2. Linux/OS X:
6
7 First, you install git using your favorite package manager. Then:
8
9 <pre>
10 git clone git://git.xonotic.org/xonotic/xonotic.git
11 cd xonotic
12 ./all update
13 </pre>
14
15 After that, you have a working checkout of the repository.
16
17 h3. Getting write access
18
19 A condition for write (push) access is that you agree that any code or data you push will be licensed under the General Public License, version 2, with or without the "or any later version" clause. In case the directory the changes apply to contains a LICENSE or COPYING file indicating another license, your pushed code has to be dual licensed appropriately. Subdirectories currently having a dual license:
20 * data/qcsrc/warpzonelib - dual licensed as "GPLv2 or later" or MIT license.
21
22 In case code you pushed was not written by you, it is your responsibility to ensure proper licensing.
23
24 To apply for write access, make an issue of type "Support" in the category "Repository" and attach your public SSH key to it.
25
26 To cleanly check out then, you would do:
27
28 <pre>
29 git clone ssh://xonotic@git.xonotic.org/xonotic.git
30 cd xonotic
31 ./all update
32 </pre>
33
34 If you already have a checkout, you would do:
35
36 <pre>
37 git config remote.origin.url ssh://xonotic@git.xonotic.org/xonotic.git
38 ./all update
39 </pre>
40
41 After that, you can write to the reposiotry using the usual git commands (commit, push).
42
43 h3. Working with the helper script "all"
44
45 To make working with the repo a little easier there's a little helper script (it's called all, as mentioned in above clone commands). It supports the following commands:
46
47 <pre>
48 ./all update
49 </pre>
50
51 This command updates all the xonotic repositories.
52
53 <pre>
54 ./all branch
55 </pre>
56
57 Lists the branches you are currrently on, in the respective repositories
58
59 <pre>
60 ./all branches
61 </pre>
62
63 Lists all the branches known for all the respective repositories
64
65 <pre>
66 ./all push
67 </pre>
68
69 Pushes your changes.. The script will ask you what to push, etc..
70
71 <pre>
72 ./all checkout
73 </pre>
74
75
76 h2. Windows
77
78 TODO info for TortoiseGit