Pergunta

Estou acostumado a extrair de um repositório git de alguém.Hoje ele mudou seu repositório para outro endereço.Gostaria de saber se há alguma maneira de sair do novo endereço e obter informações sobre quais alterações ele fez em relação à última vez antes de se mudar.

O que eu fiz foi "git clone newaddress" no meu repositório extraído do antigo.A saída é como:

tenho xxx

andar xxx

tenho xxx

tenho xxx

andar xxx

Obtendo lista de alternativas para novo endereço

Obtendo lista de pacotes para novo endereço

Obtendo índice para o pacote xxx

Obtendo pacote xxx

que contém xxx

tenho xxx

tenho xxx

andar xxx

...

Então eu "git pull" e recebi a seguinte mensagem que não entendi:

Você me pediu para puxar sem me dizer com qual ramo você deseja se fundir e 'ramil.master.merge' em seu arquivo de configuração também não me diz.Nomeie qual ramo você deseja se fundir na linha de comando e tente novamente (por exemplo,'git pull').Veja git-pull(1) para detalhes sobre o refspec.

Se você costuma se fundir com o mesmo ramo, pode configurar as seguintes variáveis ​​em seu arquivo de configuração:

branch.master.remote = <nickname>
branch.master.merge = <remote-ref>
remote.<nickname>.url = <url>
remote.<nickname>.fetch = <refspec>

Veja git-config(1) para detalhes.

O que posso fazer agora para ainda poder obter informações sobre as alterações que ele fez em relação à última vez antes de se mudar?

Obrigado e cumprimentos!

Foi útil?

Solução

Se entendi sua pergunta corretamente, o que você deseja fazer é substituir sua origem remota atual por uma nova.Não sei se você pode substituí-lo na linha de comando, mas você pode alterá-lo no seu .git/config (isso está no diretório do seu projeto)

VELHO

[remote "origin"]
  url = git+ssh://original_repository.com/my_project.git
  ...

NOVO

[remote "origin"]
  url = git+ssh://new_repository.com/my_project.git
  ...

O git+ssh parte pode ser algo como git@ (isso seria se você estivesse usando o github) ou tenho certeza de uma variedade de outras coisas.Isso pode ajudar a esclarecer algumas coisas que deixei de fora ou não expliquei bem o suficiente: Mudando sua origem.

Espero que isso ajude a responder a sua pergunta.Saúde.

Outras dicas

Execute isto em seu repositório git clonado:

 git config branch.master.remote origin

para cuidar do "Você pediu para eu puxar sem me avisar"...mensagem.

Então, se você souber para onde o repositório remoto foi movido, poderá fazer em seu novo repositório local clonado um git diff desde aquela data.

$ git diff "@{yesterday}"
$ git whatchanged --since="2 weeks ago"

Observação:o próximo git1.6.5 menciona

Formato de data gravável por humanos para várias opções, por ex."--since=yesterday", "master@{2000.09.17}", são ensinados a inferir corretamente alguma entrada omitida.

Veja também a pergunta SO "Como você faz com que o git sempre extraia de um branch específico?"

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top