Project

General

Profile

Actions

Git-maus » History » Revision 3

« Previous | Revision 3/44 (diff) | Next »
Dobbs, Adam, 21 December 2016 14:14


Git-maus

Besides Launchpad and bazaar MAUS has beta level support for git and github. At the moment code updates for the trunk cannot be accepted from github however, only via Launchpad and bazaar.

Obtaining MAUS

  • Optional: set up an account on github and add an ssh key
  • Clone the MAUS repository using:
    git clone git@github.com:mice-software/maus.git
    
  • Move into the maus directory and check the branches present with:
    git branch -av
    

    The following branches should be present master (the release branch), merge, release-candidate
  • Switch to the branch desired using e.g. for the release:
    git checkout master
    
  • Build MAUS as usual

Development

Set up a development branch

  • Set up an account on github and add an ssh key
  • Clone the MAUS repository as described above
  • Fork the MAUS repository on github
    • Go to MAUS github page and login into github
    • Click "Fork" in the top right of the screen, selecting the option to fork to your own account
  • Add your fork as a new remote in your local MAUS git repository
    • Copy the address of your new fork from github (something like git@github.com:jbloggs/maus.git, where jbloggs is your github username)
    • Return to the terminal and navigate to the MAUS git repository created earlier
    • Add your new forked repository using:
      git remote add my-fork git@github.com:jbloggs/maus.git
      

      where jbloggs is your github username.
  • Fork the merge branch locally:
    git checkout merge
    git checkout -b my-feature-branch
    
  • Push your local fork of the merge branch to your remote repository:
    git push my-fork my-feature-branch
    
  • Do some coding
  • When ready add the files you have modified or created ready for committing:
    git add <files>
    
  • Commit your changes:
    git commit -m 'Some informative message about the changes'
    
  • Push the changes to your remote repository:
    git push my-fork my-feature-branch
    

Propose your branch for merging

  • Run Jenkins test server job on your development branch (email the head of MAUS for help with setting up a test branch)
  • When Jenkins has passed, return to your repository page on github and select my-feature-branch from the drop-down menu on the left
  • Click the "Pull request" button to propose merging into the trunk
  • Make sure your branch is comfortable for merging - if not, edit some more until it is, commit and push, then try again

Updated by Dobbs, Adam over 6 years ago · 3 revisions