Create a Fork
If don't have write access to that repository, you don't need it. Create a fork by following these instructions -- it's your own clone of the repository which you can modify freely.
After creating the fork, you can then clone that repo to your computer.
git clone git@github.com:<your-git-handle>/<repository>.git
// It will be cloned to your machine where you run the command
// under a <repository> folder that it will create.
Checkout a new branch and make changes.
git checkout -b my-new-feature
To submit your changes to the original repository, you'll need to make sure that they're pushed
/* make changes */
git commit -am "New Feature: Made a new feature!"
git push origin my-new-feature
To get these changes into the original repository that you forked from, you can submit a Pull Requests by following these instructions. A Pull Request basically, you request that the user with write access to a repository pull down the changes you've made. Think of it like "I request that you pull my changes into your repo."
Note: Your fork will not stay up-to-date with all of the changes going on in the original repository, though. You'll have to pull down those changes periodically -- but this is easy.
After creating the fork, you can link to repo that you've forked from so that you can pull in it's changes and keep stay current.
git remote add upstream git@github.com:<git-user-handle>/<repository>.git
Once you've done that, keeping in sync with the changes made on the original repo is quite easy.
git checkout master // checkout your local master
git pull upstream master // fetch changes from the master branch of the repo you forked from.. which is linked to your fork under the alias "upstream" (common naming convention)
git push origin master // push the pulled changes onto your local master
git checkout -b new-branch // create a new branch and start making changes