Cherry-picking a change in git: Difference between revisions
No edit summary |
No edit summary |
||
Line 14: | Line 14: | ||
- the file that contains a record of all the cherry-picked commits for a given build: | - the file that contains a record of all the cherry-picked commits for a given build: | ||
hgwbeta: /data/releaseBuild/v999_branch/cherryPicks.log [OBSOLETE] | hgwbeta:/data/releaseBuild/v999_branch/cherryPicks.log [OBSOLETE] | ||
hgwdev:/hive/groups/browser/newBuild/v999_branch/cherryPicks.log | hgwdev:/hive/groups/browser/newBuild/v999_branch/cherryPicks.log | ||
Revision as of 17:58, 4 June 2015
The CGIs are built onto hgwbeta every-other Monday night. The QA team tests the new CGIs on hgwbeta. If problems are found, the developer is contacted for a fix to the offending file. It may be necessary to either roll back to a previous version of a file, or to include the developer's new fix in this release of the CGIs. To do either of these, we move the branch tag for the branch release of the CGIs on hgwbeta. If the developer's fix requires skipping one or more versions of the file, then the branch must be patched instead.
Where?
The two directories that are important are:
- the directory where the build is:
hgwbeta:/data/tmp/releaseBuild/v999_branch [OBSOLETE] hgwdev:/hive/groups/browser/newBuild/v999_branch
- the directory where the scripts are:
hgwbeta:/cluster/bin/build/scripts [OBSOLETE] hgwdev:/hive/groups/browser/newBuild/kent/src/utils/qa/weeklybld
- the file that contains a record of all the cherry-picked commits for a given build:
hgwbeta:/data/releaseBuild/v999_branch/cherryPicks.log [OBSOLETE] hgwdev:/hive/groups/browser/newBuild/v999_branch/cherryPicks.log
How? ("Who" in parenthesis)
- (QA): Find an error in the binaries, determine if it needs to be patched, and alert the Developer.
- (Developer): Complete a Build Patch issue in redmine and follow the instructions on the Build Patch redmine wiki page.
- (QA): Follow the instructions on the Build Patch redmine wiki page.
- (Build-Meister): Determine whether the branch tag needs to be moved (new and old versions of a file are consecutive) or whether the branch needs to be patched (versions of a file are skipped in order to incorporate the new fix). Check the Git log in order to determine which needs to be done. If versions of the file need to be skipped, check with the developers that made those changes and with QA to see if they are minor changes that could also be incorporated in which case the branch tag could still be moved.
Follow these procedures to Patch a Branch.