This repository is used as a codebase for FS-Online instances and the related setup tools. The o[0-9]+ branches of this repo are always deploy-able production ready branches.
The default latest stable branch is called o[0-9]+ e.g.: o8 or o9. where the number after o stands for the odoo version. The other branches in the github repository are development branches in the form of o8[ISSUENUMBER][OPTIONALDESCRIPTION] e.g.: o8_123 or o8_123shoptemplates or without an Github Issue o8[DESCRIPTION]
Examples:
Release tags must have the form [BRANCH]r[COUNTER] e.g.: o8r1 or o9r23
Simple setup and maintenance through odoo-tools.sh. odoo-tools.sh is a simple setup script that is able to:
HINT: db-tools.sh is used by odoo-tools.sh to backup and restore the database and data-dir of an instance.
Development is all done locally on mac or linux machines with pycharm.
# 1.) Clone the branch o8 locally:
git clone -b o8 https://github.com/OpenAT/online
git submodule update --init --recursive
git branch -avv
# 2.) Create and checkout a new branch:
# Optional Create a new Issue in Github First for the issue number
git branch o8_ckeditor_advanced
git checkout o8_ckeditor_advanced
# 3.) Push your Branch to Github (so everybody knows what you are working on)
git commit
git push origin o8_ckeditor_advanced
# 4.) Do stuff and commit and push changes until ready:
git add [file or folders] # This tells git what to include in next commit
git commit -m "[ADD] Added README.md"
git push origin o8_ckeditor_advanced
# 5.) Merging the Branch
# 5.1) Update master branch first
git fetch
git checkout o8
git pull
# 5.2) Rebase development branch on master branch (o8) to add possible changes, avoiding merge confilcts later on!
git checkout o8_ckeditor_advanced
git rebase o8
git submodule update
# 5.3) Locally merge the Development Branch (o8_ckeditor_advanced) into the master branch (o8)
# !!! OR Create a Pull request in Github which is the prefered method !!!
git checkout o8
git merge o8_ckeditor_advanced
git push origin master
# This is an example how to add a submodule with the submodule branch master:
git submodule add -b master https://github.com/ether/etherpad-lite.git etherpad-lite
# Update all submodules
git submodule update --rebase --remote --recursive
git checkout o8
git pull
git submodule update --remote --rebase --recursive
git commit -am "[UPDATE] all submodules updated"
git push origin o8