My team uses Mercurial for version control. Our development / version control routine is:
- all been committing to the same branch
- pulling for changes and rebasing our commits locally before pushing back to the hosted repository
This keeps everyone in sync. And the latest code (even unfinished code) is than grabbed from the tip of this branch and put into our test environment.
I've been tasked with creating a management process where we can more cleanly extract "completed features" into the test environment.
I've advocated that we begin to branch->pull-request->merge->close branch
process, but I've been told that branching
is not an option, and that the project director would prefer too be able to manually select commits representing completed features/bug fixes and only include those commits in a deployment to testing.
I am not sure what terminology besides cherry-pick
in GIT / HG that would represent this process, and if it would even be advisable as the commits would no-longer have a proper revision history as it's my understanding that cherry-pick
just pulls changes into the current working tree as uncommitted changes correct?