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?