title: How git works when two peers push changes to same remote simultaneously
body: <p>I am new to git, I usually use P4 which has center repository, while git is distributed VCS. </p>
  
  <p>I am interested in how git works when two peers push changes to same remote simultaneously. 
  Assume each peer resolved all conflicts before push. I guess the later one will be rejected if git reports conflicts!</p>
  
  <p>However, from what I understand, git is internally a key/value store, much like the current popular NOSQL database especially Couch-DB which supports p2p replication.</p>
  
  <p>Actually I want to ask, how does git process conflicts in the case that clients push changes to remote git repository? Is the push rejected?</p>
  
  <p>From Mark's answer, I think the push should be rejected.</p>