Repo Branching and Organization Question #21878
-
We’re about to begin the process of re-styling our very old Classic ASP site to a more modern look and I was curious about a branching strategy, since we’ll still need to maintain the existing code in Production until the re-style project is completed. In the past, we’ve mainly used SVN, so I’m not very familar with Git and wanted to get some input on how we should handle this project. Based on an article I read, it indicated we should use master for the main re-style project, then create a maint branch to support the current Production release. Using the above strategy, it seems that any changes made to the maint branch would then be merged upstream into master. That article also indicated having a next branch as a testing branch for topics/features being tested for stability for master. It also mentioned a pu branch for proposed updates. I don’t think we need either of these do we? If none of this is correct, I’m open to input on the best way to proceed. Thanks, Chris |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments
-
Given the branch names you mention, I see you have read an article about how git itself is developed. The branching model used by the git development team is far from the only strategy to use, and I don’t think it fits very well in your use case. I think you can stick to just maint and master, and maybe cherry-pick things from maint into master where they make sense. Fully merging maint into master will probably not make sense at all in your case. |
Beta Was this translation helpful? Give feedback.
-
Yes, that’s the article I read. :smiley: We’re a realtively small team, with some members off-shore, and I’m just wanting to setup a better and easier Git workflow on this new project compared to what we have on another project, which is basically does everything on master. Currently, we use Stash/Bitbucket for our repos. I created a master branch for this new project and was attempting to create a new maint branch, but I am sure which branch type to choose. The options are:
Do you have a recommendation? |
Beta Was this translation helpful? Give feedback.
-
I don’t use stash, but a the description of a release branch sounds sensible here. At the git level, all branches are equal, so it’s only in stash’s interface that they behave differently I guess. |
Beta Was this translation helpful? Give feedback.
Given the branch names you mention, I see you have read an article about how git itself is developed. The branching model used by the git development team is far from the only strategy to use, and I don’t think it fits very well in your use case.
I think you can stick to just maint and master, and maybe cherry-pick things from maint into master where they make sense. Fully merging maint into master will probably not make sense at all in your case.