Git - rebaixando um arquivo para o histórico anterior desse arquivo

4

Digamos que eu tenha um arquivo filename em um repositório git em ʻaarectory dir1 com um histórico como este:

v7 --- v8 --- v9 --- v10

O arquivo faz parte de um repositório maior com vários subdiretórios, mas apenas os conjuntos de alterações acima afetam esse arquivo. Agora eu desenterrei uma versão antiga desse arquivo ( filename também) que por engano foi confirmada em outro subdiretório dir2 . Esta versão mais antiga só "existe" em um conjunto de alterações, digamos:

v4

O problema agora é, eu posso reescrever o histórico destes (para git) dois arquivos para que ele apareça como se filename existisse apenas em dir1 resultando em um histórico como este:

v4 --- v7 --- v8 --- v9 --- v10

Acho que posso tentar remover o arquivo em dir2 e confirmá-lo como uma nova versão do arquivo em dir1 , mas isso atrapalhará o histórico real do arquivo para que a versão mais antiga o arquivo aparecerá como o mais novo.

Eu tenho muito pouca experiência com o "ajuste" do histórico de repositórios git, então não sei como fazer isso, mas acredito que o rebase possa ser a resposta? Eu sou o único que trabalha no repositório, então minha única preocupação será sincronizar essas mudanças em dois computadores.

Eu acho que o que eu quero fazer é deixar o arquivo originalmente em dir2 onde ele está no histórico, mas eu quero mudar o commit chamado v4 acima para tornar o arquivo uma versão do arquivo em dir1 .

    
por Thomas Arildsen 27.11.2013 / 11:00

0 respostas

Tags