I'm new to git and I'm trying to understand the concepts of it.

refspec - as far as I understood maps the server branches to the "local" destination branches. 

I wrote "local" because if we do 'git fetch' they do not merge with our working copy or staging area they are kept elsewhere. 

So my questions are

**A) Are they stored at .git/refs/remotes/origin/(branches)?**

**B) If yes is the content of each .git/refs/remotes/origin/(branch) a reference/ID to the place where the changes are in the server?**

In one of the branches in .git/refs/remotes/origin/ I find this: 761db53af177ecfd9c9b14511360537e041ebed7

**C) When we do a commit where are the changes save?**

are they stored in the .git/objects ?