29127fd04193dc83209b4e3ac77862b752138711
[ikiwiki.git] / README.SIPB
1 README for SIPB maintainers
2
3 How this repository is set up, and how to keep IkiWiki up to date.
4
5
6 Setup:
7
8 There are three branches of interest: remotes/origin/master, master
9 and sipb.  remotes/origin/master is the remote branch we are tracking;
10 all upstream changes show up in this branch when we `git fetch`.
11
12 master is our "awaiting upstream approval" branch, based off of
13 remotes/origin/master. Any patches in this branch should be immediately
14 suitable for submission to IkiWiki maintainers/. Ideally, this branch
15 should be equivalent to remotes/origin/master.
16
17 sipb is our live branch. It contains all of the ugly hacks and custom
18 modifications that we needed to make our website run. Ideally, this
19 branch is equivalent to master. Don't expect it to be without a lot
20 of rearchitecting and upstream cooperation.
21
22
23 Keeping up to date:
24
25 This two-tiered setup means that you will need to rebase twice in order
26 to propagate changes; possibly once if master == origin/master. Your
27 commands will look like this:
28
29 $ git checkout origin
30 if master == remotes/origin/master:
31   $ git pull
32 else
33   $ git fetch
34   $ git rebase origin/master
35 fi
36 $ git checkout sipb
37 $ git rebase master
38
39 TODO: Make a script that does this.
40