User Tools

Site Tools


evergreen-docs:github-workflow

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
evergreen-docs:github-workflow [2022/05/12 09:23] – review github's built docs, rather than compiling the docs yourself sandbergjaevergreen-docs:github-workflow [2023/12/28 15:51] aneiman
Line 21: Line 21:
  
   - On the commits tab, note how many new commits are in the pull request -- you will need this information later.   - On the commits tab, note how many new commits are in the pull request -- you will need this information later.
-  - In your terminal, if you haven't yet, add the main Evergreen repo (on GitHub) as a remote+  - In your terminal, if you haven't yet, add the main Evergreen repo (on GitHub) as a remote (make sure you're in the directory you're working on before running command)
     - ''%%git remote add github-evergreen https://github.com/evergreen-library-system/Evergreen.git%%''     - ''%%git remote add github-evergreen https://github.com/evergreen-library-system/Evergreen.git%%''
-  - Update your local master branch to reflect any changes from "origin" +  - Update your local main branch to reflect any changes from "origin" 
-    - ''git checkout master; git fetch origin; git pull origin master''+    - ''git checkout main; git fetch origin; git pull origin main''
   - Fetch the pull request branch into a new local branch   - Fetch the pull request branch into a new local branch
     - ''git fetch github-evergreen pull/[PULL_REQ_NUMBER]/head:[BRANCHNAME]''     - ''git fetch github-evergreen pull/[PULL_REQ_NUMBER]/head:[BRANCHNAME]''
-  - Cherry pick the relevant commits into your local copy of the master branch.+  - Cherry pick the relevant commits into your local copy of the main branch.
     - If only one commit: ''git cherry-pick -s [BRANCHNAME]''     - If only one commit: ''git cherry-pick -s [BRANCHNAME]''
     - If more than one: ''%%git cherry-pick -s [BRANCHNAME]~[Number of commits]..[BRANCHNAME] --edit%%'' (for example, if you are bringing in two commits from the survey-docs branch, run ''%%git cherry-pick survey-docs~2..survey-docs) --edit%%''     - If more than one: ''%%git cherry-pick -s [BRANCHNAME]~[Number of commits]..[BRANCHNAME] --edit%%'' (for example, if you are bringing in two commits from the survey-docs branch, run ''%%git cherry-pick survey-docs~2..survey-docs) --edit%%''
       - The ''%%--edit%%'' flag will permit you to edit all commit messages as they come in.       - The ''%%--edit%%'' flag will permit you to edit all commit messages as they come in.
 +  - If you need to squash commits:
 +    - From your local branch, enter ''git rebase -i HEAD~2'' (where 2 is the number of commits you wish to combine)    
 +    - Your text editor will open and should show both of the commits, for example:
 +      - pick [COMMIT HASH 1] [COMMIT MESSAGE 1]
 +      - pick [COMMIT HASH 2] [COMMIT MESSAGE 2]
 +    - Change the word "pick" in the second line to "fixup" then save and close the file
 +      - squash --> merges commits, then allows amendment of commit message
 +      - fixup --> merges commits like squash does, but discards previous commit message
 +    - Check gitlog to ensure that you now have a single commit
   - Make any corrections (via additional commits, if needed)   - Make any corrections (via additional commits, if needed)
   - Use ''git log'' to make sure everything looks good.   - Use ''git log'' to make sure everything looks good.
Line 37: Line 46:
         - Example: "Resolves LP#1234567"         - Example: "Resolves LP#1234567"
     - (If the GitHub author does not match the author's identity in git.evergreen-ils.org, consider fixing it with ''%%git commit --amend --author="NAME <email>"%%'')     - (If the GitHub author does not match the author's identity in git.evergreen-ils.org, consider fixing it with ''%%git commit --amend --author="NAME <email>"%%'')
-  - When you are confident your local master branch is ready: ''git push origin master''+  - When you are confident your local main branch is ready: ''git push origin main''
   - Backport to previous EG versions as appropriate   - Backport to previous EG versions as appropriate
     - ''git checkout rel_3_8'' (where rel_3_8 is the branch for previous version)     - ''git checkout rel_3_8'' (where rel_3_8 is the branch for previous version)
     - ''git pull'' (to get the most up-to-date version of the branch)     - ''git pull'' (to get the most up-to-date version of the branch)
-    - If one commit: ''git cherry-pick master'' +    - If one commit: ''git cherry-pick main'' 
-    - If more than one: ''git cherry-pick master~[Number of commits]..master''+    - If more than one: ''git cherry-pick main~[Number of commits]..main''
     - ''git push''     - ''git push''
   - Go back to the pull request on Github's site.  Comment on the pull request to thank the contributor, then close the pull request.   - Go back to the pull request on Github's site.  Comment on the pull request to thank the contributor, then close the pull request.
evergreen-docs/github-workflow.txt · Last modified: 2023/12/28 15:54 by aneiman

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki

© 2008-2022 GPLS and others. Evergreen is open source software, freely licensed under GNU GPLv2 or later.
The Evergreen Project is a U.S. 501(c)3 non-profit organization.