ssh keys seem to be what you are looking for. GitHubs explanation:
We strongly recommend using an SSH connection when interacting with GitHub. SSH keys are a way to identify trusted computers, without involving passwords.
Here is the full article on the topic: https://help.github.com/articles/generating-ssh-keys