I am currently learning about Git, and have found many, in my opinion, conflicting definitions of what origin are.
My current understanding of origin based on my tutorial, is that every time a file is fetched from the local server, the origin "pointer" moves to the latest commit downloaded from there, and thus I consider it a pointer.
The problem is I've also heard the origin referred to as a branch (Git branching: master vs. origin/master vs. remotes/origin/master) . My question is how can it be considered a "pointer" and branch at the same time, when pointers "points" to an individual commit and branch refers to a change in direction of a branch that allows you to make alterations separate from the current branch, two completely different things.
A branch:
master --> a
\
\
branch1 --> b
A pointer:
master --> a --> b --> c
--> C is the HEAD "pointer" and capable of moving if point D created