Executando verificação de segurança...
1

vão todos os arquivos do meu repositório local e não apenas os que eu selecionei no git add

Mas a ideia do git push é justamente essa: enviar para o repositório remoto todas as alterações do seu branch local que ainda não estão lá.

Aqui tem uma explicação bem didática, e a ideia básica é essa mesmo. Ao fazer push, o "seu" Git (seu repositório local) está dizendo: "Ei remote, fiz essas alterações no meu branch, vou te mandar todas que vc ainda não tem".


No git add vc escolhe as alterações que vão no próximo commit. Se o push mandou mais coisas, é porque essas coisas a mais não estavam no repositório remoto. Um push não vai mandar só o último commit, vai mandar tudo que ainda não está no remoto.


Dito isso, por que vc precisa trocar o remoto? Pergunto isso porque dá para ter vários repositórios remotos configurados (e dá até pra fazer push em mais de um ao mesmo tempo), e vc pode dar o nome que quiser pra eles ("origin" é apenas o nome default quando vc clona um repositório, mas nada impede que vc dê outros nomes para outros remotos).

E aí na hora do push vc escolhe para qual precisa mandar, bastando fazer git push <nome-do-remote> <nome-do-branch>.


Agora, se vc só quer uma parte dos arquivos em outro repositório, aí não dá mesmo. Todos os repositórios sempre terão todo o histórico, e qualquer tentativa de sincronizar (push, pull, fetch) sempre vai enviar/receber tudo que estiver faltando.

Carregando publicação patrocinada...