Difference between revisions of "Instructions for Working with GlueX Git Repositories"
From GlueXWiki
(Created page with "==The Workflow== # create local repository #* git clone https:/github.com/jeffersonlab/sim-recon # create a local topic branch #* git branch my\_work # move to the new topic...") |
(→The Workflow) |
||
(8 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
==The Workflow== | ==The Workflow== | ||
− | # | + | Let's use the halld_recon repository as an example. |
− | #* git clone https:/github.com/jeffersonlab/ | + | |
− | # | + | # Create local repository in the current directory |
− | #* git branch | + | #* <code>git clone https://github.com/jeffersonlab/halld_recon</code> |
− | # | + | # Create a local branch |
− | #* git checkout | + | #* <code>cd halld_recon</code> |
+ | #* <code>git branch bug_removal</code> | ||
+ | # Check-out the new branch | ||
+ | #* <code>git checkout bug_removal</code> | ||
# ... work on topic branch, make changes, add them, commit them... | # ... work on topic branch, make changes, add them, commit them... | ||
− | # | + | # Push local branch to public branch |
− | #* git push origin | + | #* <code>git push origin -u bug_removal</code> |
− | #* creates branch " | + | #* creates branch "bug_removal" on public repository |
− | # | + | # Issue pull request |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
#* go to the GitHub site and log in | #* go to the GitHub site and log in | ||
− | #* navigate to | + | #* navigate to the repository page (https://github.com/JeffersonLab/halld_recon) |
− | #* | + | #* click on "branches" on the "code" tab |
+ | #* find the line for the "bug_removal" branch | ||
+ | #* click on "pull request" on that line | ||
+ | #* fill in and submit web form | ||
+ | #** essentially creates action item on GitHub, a request that changes on branch "bug_removal" be merged into master branch | ||
+ | # Ask someone else to act on pull request. Pull requesters cannot merge their own request. The person doing the merge: | ||
+ | #* goes to the GitHub site and logs in | ||
+ | #* navigates to the repository page (e.g., https://github.com/JeffersonLab/halld_recon) | ||
+ | #* clicks on "pull requests" in the right-hand column | ||
+ | #* selects the relevant pull request | ||
+ | #* if required, submits a review of the pull request | ||
+ | #* fills in the merge form and initiates the merge | ||
==Notes on this Workflow== | ==Notes on this Workflow== | ||
* Everyone needs an account on GitHub. | * Everyone needs an account on GitHub. | ||
− | * Anyone can | + | * Anyone can push to the master branch from their private repository. No one should. |
− | * Changes should go onto topic branches | + | * Changes should go onto topic branches; this is enforced only administratively. |
Latest revision as of 20:27, 13 May 2020
The Workflow
Let's use the halld_recon repository as an example.
- Create local repository in the current directory
- Create a local branch
-
cd halld_recon
-
git branch bug_removal
-
- Check-out the new branch
-
git checkout bug_removal
-
- ... work on topic branch, make changes, add them, commit them...
- Push local branch to public branch
-
git push origin -u bug_removal
- creates branch "bug_removal" on public repository
-
- Issue pull request
- go to the GitHub site and log in
- navigate to the repository page (https://github.com/JeffersonLab/halld_recon)
- click on "branches" on the "code" tab
- find the line for the "bug_removal" branch
- click on "pull request" on that line
- fill in and submit web form
- essentially creates action item on GitHub, a request that changes on branch "bug_removal" be merged into master branch
- Ask someone else to act on pull request. Pull requesters cannot merge their own request. The person doing the merge:
- goes to the GitHub site and logs in
- navigates to the repository page (e.g., https://github.com/JeffersonLab/halld_recon)
- clicks on "pull requests" in the right-hand column
- selects the relevant pull request
- if required, submits a review of the pull request
- fills in the merge form and initiates the merge
Notes on this Workflow
- Everyone needs an account on GitHub.
- Anyone can push to the master branch from their private repository. No one should.
- Changes should go onto topic branches; this is enforced only administratively.