forked from android/architecture-samples
-
Notifications
You must be signed in to change notification settings - Fork 0
Development branches
JoseAlcerreca edited this page Mar 29, 2016
·
2 revisions
We use git branches to define the dependencies between different samples and make development easier.
- Every sample lives in its own branch like
todo-mvp,todo-mvp-loaders, etc. - Samples in development are prefixed with "dev-" like
dev-todo-mvp-futuresample. - Big changes are created in feature branches like
dev-todo-mvp-tabletlayout.
Except todo-mvp, every sample depends on another sample. This is done so that changes to a sample can be replicated across its dependants.
Here's a dependency graph:
- todo-mvp
- todo-mvp-loaders
- todo-mvp-contentproviders
- todo-databinding
- todo-mvp-loaders
A change to todo-mvp must be merged into todo-mvp-loaders and todo-databinding so when this happens, the project maintainers will do something similar to:
$ git checkout todo-mvp-loaders
Make sure it's up-to-date:
$ git pull
Merge:
$ git merge origin/todo-mvp
This merge will probably contain conflicts. Remember that everything in androidTest*/ will probably have to be merged in, whereas classes under test/ are sample-specific.
$ git mergetool
# resolve, resolve, resolve
$ git commit
$ git push origin todo-mvp-loaders
After this, todo-mvp-contentproviders can be merged with todo-mvp-loaders.