Cherry-picking a change in git: Difference between revisions

From Genecats
Jump to navigationJump to search
(updating to reflect that picks are done via question in cgi build redmine ticket)
No edit summary
 
(12 intermediate revisions by 4 users not shown)
Line 6: Line 6:


- the directory where the build is:
- the directory where the build is:
   hgwbeta:/data/tmp/releaseBuild/v999_branch
   hgwdev:/hive/groups/browser/newBuild/v999_branch


- the directory where the scripts are:
- the directory where the scripts are:
   hgwbeta:/cluster/bin/build/scripts
   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:
- the file that contains a record of all the cherry-picked commits for a given build:
   hgwbeta: /data/releaseBuild/v999_branch/cherryPicks.log
   hgwdev:/hive/groups/browser/newBuild/v999_branch/cherryPicks.log  
 
 
<b>Follow these procedures to</b> [[ Patching_a_Branch | Patch a Branch]].


'''How? ("Who" in parenthesis)'''
'''How? ("Who" in parenthesis)'''


# ('''QA'''): Find an error in the binaries, determine if it needs to be patched, and alert the Developer.  
# ('''QA'''): Find an error in the binaries, determine if it needs to be patched, and alert the Developer.  
# ('''Developer'''): Fix the error (and get a second opinion on your fix from another developer). Let the QA person know that it is fixed.  
# ('''Developer'''): Complete a Build Patch issue in redmine and follow the instructions on the [http://redmine.soe.ucsc.edu/projects/genomebrowser/wiki/Build_Patch| Build Patch] redmine wiki page.  
# ('''QA'''): Verify the developer's fix on hgwdev. Request the pick by posing a question to the Build-meister in the CGI build redmine ticket (include the usual info: revision number of the fix and branch tag move or patch request and an explanation of the problem and the fix and the CGIs that will be affected).  
# ('''QA'''): Follow the instructions on the [http://redmine.soe.ucsc.edu/projects/genomebrowser/wiki/Build_Patch| 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.  
# ('''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 [[ Patching_a_Branch | Patch a Branch]].




[[Category:Git]]
[[Category:Browser QA]]
[[Category:Browser QA]]
[[Category:Browser QA CGI]]
[[Category:Browser QA CGI]]

Latest revision as of 01:32, 13 August 2020

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:

  hgwdev:/hive/groups/browser/newBuild/v999_branch

- the directory where the scripts are:

  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:

  hgwdev:/hive/groups/browser/newBuild/v999_branch/cherryPicks.log 

Follow these procedures to Patch a Branch.

How? ("Who" in parenthesis)

  1. (QA): Find an error in the binaries, determine if it needs to be patched, and alert the Developer.
  2. (Developer): Complete a Build Patch issue in redmine and follow the instructions on the Build Patch redmine wiki page.
  3. (QA): Follow the instructions on the Build Patch redmine wiki page.
  4. (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.