Personalize your Git environment:
$ git config --global user.name "Waldemar Brodkorb" $ git config --global user.email wbx@openadk.org
Get the latest version of OpenADK via anonymous git:
$ git clone --bare git://openadk.org/git/openadk.git myadk.git
Use git-daemon to make the repository public to your developers. After that clone your new shared project repository:
$ git clone git+ssh://myserver.com/git/myadk.git $ cd myadk
Configure OpenADK remote git repository:
$ git remote add openadk git://openadk.org/git/openadk
Now you can either start with the latest version or use some older version:
$ git checkout -b stable_1_0 $sha1
You can find $sha1 via git log. $sha1 is the hash after the keyword „commit“.
Now build a firmware image for your target and test it. Fix bugs in the build environment or add new stuff. You can use the „extra“ directory to add local unpackaged binaries and/or configuration files to overwrite packaged stuff.
Check your uncommitted changes:
$ git status $ git diff --cached $ git diff
Commit your git-added changes:
$ git commit
Or just commit all changes:
$ git commit -a
It is a good style to make a lot of small atomic commits.
Push your changes back to your git repository: For new lokal branches:
$ git push origin stable_1_0
Or in regulary usage via:
$ git push
You can generate patches from all your changes against the remote master:
$ git format-patch -s origin
Send all relevant patches to OpenADK author via eMail.
Update your master with changes from OpenADK:
$ git checkout master $ git pull openadk master
If you want you can merge all changes to your branch:
$ git checkout stable_1_0 $ git merge master
Or just cherry-pick some of the commits:
$ git cherry-pick $sha1
Tag your tested stable branch:
$ git tag -a stable_1.0
Push your tag to your repository:
$ git push origin stable_1.0
Checkout your tag and build your firmware:
$ git clone git+ssh://myserver.com/git/myadk.git mytag $ cd mytag $ git checkout stable_1.0
Deleting branches remotely:
$ git branch -r $ git push origin :branchname
Deleting branches locally:
$ git branch $ git branch -D branchname