Eu quero substituir meu repositório local do git pelo repositório que eu recebi.

2

Eu não quero mesclar porque esse é o problema.

Digamos que meu repositório tenha esta aparência: (letter's are commits)

B C D E F G

'A' é a cabeça. E eu tenho dois commits ('E' e 'C' dos quais eu quero me livrar). Se eu apenas remover esses dois commits em particular, eu só obtenho mais dois commits no topo da cabeça dizendo que reverti dois commits. Eu não quero isso. Eu quero que meu repositório seja parecido com o repositório remoto para o qual eu sou forçado.

O problema é que não consigo fazer nenhum trabalho porque toda vez que eu envio um commit, ele também envia commits 'E' e 'C'.

Eu preciso de ajuda. Fiz inúmeras pesquisas e todas as respostas que encontro são soluções / séries abstratas de comandos sem explicação para elas e não sei dizer se é o que preciso.

    
por Pinkerton 01.11.2012 / 14:34

1 resposta

0

Você já tentou:

git rebase -i A

E descartar os commits C e E

Você pode ter um problema, já que os empurrou para o controle remoto antes, mas não é possível reescrever o histórico se já tiver passado para um controle remoto. Quero dizer, você pode, mas as pessoas que puxaram depois que você empurrou terão um problema, pois, de repente, a história delas não é a mesma do histórico remoto.

    
por 11.11.2012 / 15:56

Tags