Sobre o GIT, estou usando ele a algum tempo no trabalho então tenho um pouco de conhecimento a respeito, mas não domino plenamente, tenho muito q aprender ainda. Vamos lá.
Primeiro, esqueça a ideia de buscar arquivos do server de desenvolvimento(de teste pelo oq entendi), os arquivos só virão do repositório GIT(onde ficarão centralizados e com controle de versão(seu histórico)). Depois que o programador A, fez uma modificação no arquivo a.php, ele faz o commit e push(explico melhor mais adiante) para o repositório GIT, a partir dai, o arquivo a.php está disponível com a ultima atualização para outros programadores pegarem ele(cuidado para mais de um programador não mexer no mesmo arquivo ao mesmo tempo, isso gera conflitos caso façam alterações nas mesmas linhas do arquivo).
2° passo, colocar os arquivos modificados no servidor de testes. Bem, vc pode manualmente pegar eles do git e então jogar via ftp no seu public_html ou então usa nosso querido GIT pra esta missão(existem tutoriais na net só pra este fim). Sim, pode-se utilizar ele pra isso, mas primeiro é preciso entender bem como funciona o fluxo de trabalho do git, então vamos lá..
Supondo que já exista um servidor com o GIT e que todos os programadores acessam ele para buscaremrquivos (comando fetch seguido de pull) e enviarem arquivos modificados (comando commit seguido de push), vamos ao que interessa.
Explicando os comando citados:
Programador A precisa pegar um arquivo no repositório central, então ele faz:
git fetch (para obter as modificações que ele não tem na máquina local)
O comando acima não atualiza os arquivos que ele tem no diretorio de trabalho local dele, apenas atualiza o repositório local dele(sim, repositorio local, o git trabalha assim, todos programadores tem todas as versões de todos os arquivos localmente). Para que o diretorio de trabalho(aquele que contem os arquivos que ele edita com sua IDE preferida) receba os arquivos na sua ultima versão, ele executa o comando:
git pull (este comando, traz do repositorio local para a pasta de trabalho, as ultimas atualizações dos arquivos).
O programador fez modificações e quer enviar para o repositório central, então ele faz o seguinte:
git commit (este comando pega as modificações do diretorio de trabalho e adiciona ao repositório local, este comando não envia para que fique acessível aos outros programadores, é só local). E para que envie para o repositorio central, executa:
git push (este comando pega as atualizações que estão no seu repositorio local e envia para o central).
Não sei se ajudei ou te confundi ainda mais, no começo eu me quebrei um pouco com o GIT, mas vale muito a pena
utilizar ele, uso o dropbox como repositório "central", assim acesso minhas modificações de qualquer lugar a partir de qualquer computador meu.
Por favor, leia o passo a passo do link a baixo, aprendi com ele, é do próprio GIT.
Boa sorte,
Abraço!