Difference between revisions of "Instructions for Working with GlueX Git Repositories"
From GlueXWiki
Line 5: | Line 5: | ||
# Create local repository in the current directory | # Create local repository in the current directory | ||
#* <code>git clone https:/github.com/jeffersonlab/sim-recon</code> | #* <code>git clone https:/github.com/jeffersonlab/sim-recon</code> | ||
− | # Create a local | + | # Create a local branch |
#* <code>cd sim-recon</code> | #* <code>cd sim-recon</code> | ||
#* <code>git branch my_work</code> | #* <code>git branch my_work</code> | ||
− | # Check-out the new | + | # Check-out the new branch |
#* <code>git checkout my_work</code> | #* <code>git checkout my_work</code> | ||
# ... work on topic branch, make changes, add them, commit them... | # ... work on topic branch, make changes, add them, commit them... | ||
− | # Push local | + | # Push local branch to public branch |
#* <code>git push origin my_work:new_bug_fix</code> | #* <code>git push origin my_work:new_bug_fix</code> | ||
#* creates branch "new_bug_fix" on public repository | #* creates branch "new_bug_fix" on public repository | ||
Line 19: | Line 19: | ||
#* switch to the "new_bug_fix" branch (pull down menu) | #* switch to the "new_bug_fix" branch (pull down menu) | ||
#* click on "pull request" | #* click on "pull request" | ||
− | #** creates action item on GitHub, a request that changes on branch "new_bug_fix" be merged | + | #* fill in and submit web form |
+ | #** creates action item on GitHub, a request that changes on branch "new_bug_fix" be merged into master branch | ||
# Ask someone else to act on pull request. They | # Ask someone else to act on pull request. They | ||
#* go to the GitHub site and log in | #* go to the GitHub site and log in |
Revision as of 12:50, 14 July 2015
The Workflow
Let's use the sim-recon repository as an example.
- Create local repository in the current directory
-
git clone https:/github.com/jeffersonlab/sim-recon
-
- Create a local branch
-
cd sim-recon
-
git branch my_work
-
- Check-out the new branch
-
git checkout my_work
-
- ... work on topic branch, make changes, add them, commit them...
- Push local branch to public branch
-
git push origin my_work:new_bug_fix
- creates branch "new_bug_fix" on public repository
-
- Issue pull request
- go to the GitHub site and log in
- navigate to the repository page (https://github.com/JeffersonLab/sim-recon)
- switch to the "new_bug_fix" branch (pull down menu)
- click on "pull request"
- fill in and submit web form
- creates action item on GitHub, a request that changes on branch "new_bug_fix" be merged into master branch
- Ask someone else to act on pull request. They
- go to the GitHub site and log in
- navigate to the repository page (https://github.com/JeffersonLab/sim-recon)
- click on "pull requests" in the right-hand column
- fill in and submit web form to merge in changes
Notes on this Workflow
- Everyone needs an account on GitHub.
- Anyone can update the master branch.
- Changes should go onto topic branches, but enforced only administratively.