TortoiseHg Aplicar um Patch

105

O TortoiseHg permite que você envie um arquivo de patch de suas alterações para alguém, mas ele suporta a aplicação de patches?

Se sim, como você aplica um patch usando TortoiseHg?

Solução Obrigado @Will Bickford por sua ajuda. Acabei de encontrar este recurso listado como TODO no site do TortoiseHg.

Michael La Voie
fonte
Talvez estejamos apresentando "diálogo de importação" para TortoiseHg :) 0.9 será lançado em novembro de 2009.
kuy
Espero que sim, mas ainda não o vi no road map da 0.9. Ainda assim, a equipe do TortoiseHg parece ter seus atos juntos, então eu duvido que demore muito.
Michael La Voie,

Respostas:

108

Em Repository Explorer, Repository> Import ...

Tim Scott
fonte
Boa decisão. A partir da V1.0, a importação de patch faz parte do TortoiseHg
Michael La Voie
Isso também deveria estar (principalmente?) Acessível a partir do menu de contexto da mesma maneira que Exportar ...
Piotr Dobrogost
claro e simples!
DanielV
50

Parece que não há suporte embutido no TortoiseHg para isso. Tente isso em um prompt de comando:

hg import my-patch-file.patch

Isso deve aplicar o patch ao seu repositório Mercurial e cópia de trabalho.

Resposta da primeira facada

Você deve ser capaz de clicar com o botão direito no arquivo de patch e escolher "Aplicar patch ..." - é assim que funciona para outros clientes TortoiseX. Certifique-se de salvar o arquivo de patch no mesmo caminho de diretório de onde foi gerado.

Baixando TortoiseHg 0.8.1 para testar ...

Will Bickford
fonte
Obrigado pela sugestão. Não vejo essa opção.
Michael La Voie,
Sim, eu baixei e demorei um pouco para encontrar o recurso "patch de email" ao qual você estava se referindo. Consertando ...
Will Bickford,
Obrigado pela ajuda, espero que seja adicionado em uma versão futura.
Michael La Voie,
3
Agradável. Use o --no-commitparâmetro para evitar um commit.
ivkremer
9

O que também pode ser digno de nota é que "Repository Explorer, Synchronize> Import ..." (que internamente faz uma "importação de hg") fará automaticamente um " commit " - este pode não ser o comportamento desejado.

Outra possibilidade é usar o comando unix "patch" (no Windows talvez use a versão cygwin) ou use "hg import" diretamente com a opção "--no-commit". Ambos farão apenas mudanças no diretório de trabalho e você pode revisar as mudanças e submetê-las manualmente mais tarde.

Nightingale7
fonte
Eu tenho duas imagens modificadas em um branch separado e quero mesclar esse changeset ao meu branch padrão por meio de um patch. Mas a importação não faz nada. Ele simplesmente fecha a janela e não há atualizações também. O que poderia dar errado? Nada é impresso no log também!
Ε Г И І И О
8

Em 1.0, no Workbench: Repositório> Importar ...

yuzisee
fonte