I am new with git.
I have a project on git. I would like someone else to get the repository, make changes and check their changes back into the repository.
Before that I would like to do this from a different machine that I have
what is the procedure to do this?
should the repository be cloned on the machine?
When it comes to collaborating on GitHub, there are two policies:
1/ Forking
This is the recommended path.
Basically, your colleague:
He will only push to origin because he is not allowed to push on upstream (the ssh-based authentication would fail on your upstream repo)
Whenever he wants you to integrate in your GitHub repo some changes, he will make “pull request” (through his GitHub repo admin UI), notifying you of some commits to apply.
See this script by Andre for automating the process.
2/ Granting commit access
That is a less safe route, where you add his public ssh-key to the list of users/keys allowed to push directly to your upstream repo.
See “Managing Collaborators“.