1Daily Use Guide for using Savannah for lwIP
2
3Table of Contents:
4
51 - Obtaining lwIP from the Git repository
62 - Committers/developers Git access using SSH
73 - Merging a development branch to master branch
84 - How to release lwIP
9
10
11
121 Obtaining lwIP from the Git repository
13----------------------------------------
14
15To perform an anonymous Git clone of the master branch (this is where
16bug fixes and incremental enhancements occur), do this:
17 git clone git://git.savannah.nongnu.org/lwip.git
18
19Or, obtain a stable branch (updated with bug fixes only) as follows:
20 git clone --branch DEVEL-1_4_1 git://git.savannah.nongnu.org/lwip.git
21
22Or, obtain a specific (fixed) release as follows:
23 git clone --branch STABLE-1_4_1 git://git.savannah.nongnu.org/lwip.git
24
25
262 Committers/developers Git access using SSH
27--------------------------------------------
28
29The Savannah server uses SSH (Secure Shell) protocol 2 authentication and encryption.
30As such, Git commits to the server occur through a SSH tunnel for project members.
31To create a SSH2 key pair in UNIX-like environments, do this:
32 ssh-keygen
33
34Under Windows, a recommended SSH client is "PuTTY", freely available with good
35documentation and a graphic user interface. Use its key generator.
36
37Now paste the id_rsa.pub contents into your Savannah account public key list. Wait
38a while so that Savannah can update its configuration (This can take minutes).
39
40Try to login using SSH:
41 ssh -v your_login@git.sv.gnu.org
42
43If it tells you:
44 Linux vcs.savannah.gnu.org 2.6.32-5-xen-686 #1 SMP Wed Jun 17 17:10:03 UTC 2015 i686
45
46 Interactive shell login is not possible for security reasons.
47 VCS commands are allowed.
48 Last login: Tue May 15 23:10:12 2012 from 82.245.102.129
49 You tried to execute:
50 Sorry, you are not allowed to execute that command.
51 Shared connection to git.sv.gnu.org closed.
52
53then you could login; Savannah refuses to give you a shell - which is OK, as we
54are allowed to use SSH for Git only. Now, you should be able to do this:
55 git clone your_login@git.sv.gnu.org:/srv/git/lwip.git
56
57After which you can edit your local files with bug fixes or new features and
58commit them. Make sure you know what you are doing when using Git to make
59changes on the repository. If in doubt, ask on the lwip-members mailing list.
60
61(If SSH asks about authenticity of the host, you can check the key
62fingerprint against https://savannah.nongnu.org/git/?group=lwip
63
64
653 - Merging a development branch to master branch
66-------------------------------------------------
67
68Merging is a straightforward process in Git. How to merge all changes in a
69development branch since our last merge from main:
70
71Checkout the master branch:
72 git checkout master
73
74Merge the development branch to master:
75 git merge your-development-branch
76
77Resolve any conflict.
78
79Commit the merge result.
80 git commit -a
81
82Push your commits:
83 git push
84
85
864 How to release lwIP
87---------------------
88
89First, tag the release using Git: (I use release number 1.4.1 throughout
90this example).
91 git tag -a STABLE-1_4_1
92
93Share the tag reference by pushing it to remote:
94 git push origin STABLE-1_4_1
95
96Prepare the release:
97 cp -r lwip lwip-1.4.1
98 rm -rf lwip-1.4.1/.git lwip-1.4.1/.gitattributes
99
100Archive the current directory using tar, gzip'd, bzip2'd and zip'd.
101 tar czvf lwip-1.4.1.tar.gz lwip-1.4.1
102 tar cjvf lwip-1.4.1.tar.bz2 lwip-1.4.1
103 zip -r lwip-1.4.1.zip lwip-1.4.1
104
105Alternatively, archive the current directory using git
106 git archive -o lwip-1.4.1.tar.gz --prefix lwip-1.4.1/ STABLE-1_4_1
107
108Now, sign the archives with a detached GPG binary signature as follows:
109 gpg -b lwip-1.4.1.tar.gz
110 gpg -b lwip-1.4.1.tar.bz2
111 gpg -b lwip-1.4.1.zip
112
113Upload these files using scp:
114 scp lwip-1.4.1.* <username>@dl.sv.nongnu.org:/releases/lwip/
115
116Additionally, you may post a news item on Savannah, like this:
117
118A new 1.4.1 release is now available here:
119http://savannah.nongnu.org/files/?group=lwip&highlight=1.4.1
120
121You will have to submit this via the user News interface, then approve
122this via the Administrator News interface.
123