Github Collaboration
For full documentation visit our wiki
Gitflow
Current Roles
- Tania Molina (Lead Developer/Project Manager): @lastralab
- Grace Smith-Vidaurre, PhD (PI, Developer, R Lead): @gsvidaurre
New collaborators
- Set up a local replicate of the tracking system that is separate from the code owner
- Make sure that issues that require modifying the same file are merged to avoid conflicts downstream (copy and paste into a single issue, close the other). Alternatively, work on these issues one at a time (after one issue was merged to main)
- For every issue that requires developing or modifying code, create a local branch with the issue number (e.g. PCT-10 for issue #10) from the main branch (e.g. see Git workflow above)
git checkout main
git branch
to confirm that you're on the main branchgit fetch
git pull
git checkout -b PCT-[insert issue number]
git branch
to confirm that you're on the new local branch
- Make changes on this local branch
- Test changes on the local branch by running the tracking system and checking for anticipated outcomes or errors
- Commit local changes and push them to the same branch in the remote master (may need to publish the local branch remotely)
git fetch
git pull
git add ./[name of files(s)]
git commit -m '[PCT-000] Then add your message'
git push
- Make a pull request to merge the remote version of the local branch with the staging branch
- The code owner tests the updates on their local tracking system (see above) before confirming the pull request and merging the changes to the main branch
Setup Git credentials before cloning
These steps will save time instead of entering your Git credentials over and over.
- Create a new github token and store it safely.
- Store settings locally:
git config --global credential.helper store
- Clone repository:
git clone https://github.com/lastralab/ABISSMAL.git
- Insert credentials using your new token as password