A simple cheat sheet for Fedora developers new to Git.
- Get the repository:
Code Block |
---|
git clone git@github.com:fcrepo/fcrepo.git
cd fcrepo |
- Create the branch where you'll do your work:
Code Block |
---|
git branch fcrepo-780
git checkout fcrepo-780 |
The checkout
command makes whatever branch you specify the local active branch. Make your changes, test...
- Add your edited/new files, then commit your branch:
Code Block |
---|
git add myfile.java
git commit myfile.java |
- Push the branch back up to github
Code Block |
---|
git push origin fcrepo-780 |
- Merge the branch into master (formerly known as 'trunk')
Code Block |
---|
git checkout master
git merge fcrepo-780 |
Resolve any conflicts, and test again.
If any time has passed since you cloned master from github and merged your branch into your local copy of master, make sure that you also merge any upstream changes to master into your local copy:
Code Block |
---|
git fetch origin master |
Examine the changes:
Code Block |
---|
git diff origin master |
then:
Code Block |
---|
git merge origin/master |
(The command git pull
does a combined fetch-and-merge, but read this on why that's a bad idea.)
Merges are automatically committed locally.
- Update master on github
Code Block |
---|
git push origin master |
- Once you've received word that the build has completed correctly, delete the branch
Code Block |
---|
git push origin :fcrepo-780 |
You can run git status
at any time to get a snapshot of your current state. You can also examine your differences with the master branch on github at any time by executing these two commands:
Code Block |
---|
git fetch origin master
git diff origin master |