Semplificando molto, il commit è locale, il push porta quello che hai committato sul repository remoto.

L'ideale sarebbe avere un repository remoto principale ("master") e N fork di questo repository, ad ognuno il suo. Ciascun programmatore lavora sul proprio repository che ogni tanto verrà mergiato col master.