Git Branch Model for iOS projects with one developer

Posted by glenwayguy on Programmers See other posts from Programmers or by glenwayguy
Published on 2013-05-24T22:00:18Z Indexed on 2013/06/29 4:28 UTC
Read the original article Hit count: 179

Filed under:
|
|
|

I'm using git for an iOS project, and so far have the following branch model:

 feature_brach(usually multiple) -> development -> testing -> master

Feature-branches are short-lived, just used to add a feature or bug, then merged back in to development and deleted. Development is fairly stable, but not ready for production.
Testing is when we have a stable version with enough features for a new update, and we ship to beta testers. Once testing is finished, it can be moved back into development or advanced into master.
The problem, however, lies in the fact that we can't instantly deploy. On iOS, it can be several weeks between the time a build is released and when it actually hits users. I always want to have a version of the code that is currently on the market in my repo, but I also have to have a place to keep the current stable code to be sent for release.
So:

  • where should I keep stable code
  • where should I keep the code currently on the market
  • and where should I keep the code that is in review with Apple, and will be (hopefully) put on the market soon?

Also, this is a one developer team, so collaboration is not totally necessary, but preferred because there may be more members in the future.

© Programmers or respective owner

Related posts about version-control

Related posts about git