Adding to iDEA

The iDEA source code is managed using the git version control system.

Committing changes locally

Before you start committing, make sure that your environment is properly configured:

git config --global user.name "John Smith"
git config --global user.email "john.smith@york.ac.uk"

Once you have made a set of changes you are happy with, you can commit the change set to your local repository. This will ensure that as you pull changes from the central repository they will be automatically integrated into your work. To see the list of files you have changed run

git status

Then to add a file you want to commit run

git add file_name

Once you have finished adding files you can commit your changes locally using

git commit

You will be prompted to enter a commit message to describe your changes and save the file. Your changes are now committed!

Contributing your changes to iDEA

Before contributing your changes back to iDEA, make sure to comply with our best practises.

  1. Fork the iDEA repository on github

  2. Assuming you’ve already committed your changes to a local repo, add a remote to your fork:

    git remote add fork https://github.com/[GitHub Username]/idea-public.git
    
  3. Pull from your fork (to synchronize), and then push local changes back to github

    git pull fork master # may be asked to merge
    git push fork master
    
  4. Create a pull request from your fork to the iDEA repo on github (you’ll need to click on compare across forks)

Once a core developer maintainer has reviewed your pull request, your changes will be incorporated into iDEA.

Pulling the latest changes from iDEA

As the development of iDEA is progressing, you’ll need to update your fork and your local repository from time to time.

Updating your local repository:

git remote add upstream git@github.com:godby-group/idea-public.git
git pull upstream master

After this, also update your fork on github:

git push fork master

Note: You will not be able to perfrom this pull if you have untracked changes, you should first commit your changes as described above. If you do not wish to commit the untracked changes and simply want to remove them run

git stash