enchance enchance - 2 months ago 4
Git Question

What is "origin" in Git?

When I run:

git push origin branchname


What exactly is
origin
and why do I have to type it before the branch name?

Answer

origin is an alias on your system for a particular remote repository. It's not actually a property of that repository.

By doing

git push origin branchname

you're saying to push to the origin repository. There's no requirement to name the remote repository origin: in fact the same repository could have a different alias for another developer.

Remotes are simply an alias that store the url of repositories. You can see what url belongs to each remote by using

git remote -v  

In the push command, you can use remotes or you can simply use a url directly. An example that uses the url

git push git@github.com:git/git.git master