You can more or less directly pull and push between your "clients", i.e. PC and laptop. The transport may be a direct connection like SSH or HTTP. But you can also use another repository on external media, that may be a USB stick, an external hard drive or even a service like Dropbox.
That way your workflow could look like this:
- Make changes on your laptop
- Commit your changes on your laptop
- Push commits to repository on a USB stick
- Pull commit from the USB stick to the repository on your PC
- Make more changes
- Commit them - you might also amend your other commit if you want your changes to be atomic
- Push your final commits to the repository on the server
Be aware that you'll always need to commit your changes locally before you can push them to another repository. It seems like you come from another SCM system like Subversion where committing always means "make the changes visible on the server and for everyone". Git works different, commits are only local before you push them.
git
repos are created equal; none is the "server." – Sentimentality