Skip to content
gracjan edited this page Apr 7, 2015 · 17 revisions

(For a list of ideas from small to big to hack on jump to Ideas)

We are very open and accepting so you may just try to throw code at us and then we can work out details together!

Having said that we generally try to follow the "Fork & pull" Github model. In steps that would be:

  1. Fork github.com/haskell/haskell-mode.

  2. Clone the repo locally:

    git clone [email protected]/xxx/haskell-mode
    

    where xxx is your account at github.com.

  3. Make the fixes.

  4. Make a branch:

    git checkout -b pr-foobar-improvements
    
  5. Commit:

    git commit -a -m "Super important foobar improvements"
    
  6. Push to your repo at github. git push

  7. Create a pull request by logging into github.com and clicking some green buttons.

So far so good. Pull request is there, it might require some polishing

  1. Add upstream remote:
git remote add haskell git://github.com/haskell/haskell-mode.git
  1. Rebase on top of current master in upstream repo:
git fetch haskell
git rebase haskell/master
  1. Pushing updated commits:
git push origin +pr-foobar-improvements

Note that it is ok to update commits until they are merged into master. After that point they are permanent history and should never ever change.

  1. Delete your branch:
git push origin :pr-foobar-improvements
git fetch --prune

Have fun!