Pergunta

Basicamente, eu tenho ramo dev, e que eu gostaria de fazer é criar um ramo de funcionalidade enquanto eu implementar alguma coisa, e, em seguida, fundi-lo de volta. Assim, situações como ocorre o seguinte

 a
 b
 c
 d - dev
/ 
e
f - feature

Desde dev não é uma cabeça, ainda é possível trazer dev até característica de tal forma que ambos dev e recurso estão apontando para f?

Eu tenho certeza git pode fazer isso muito bem, mas parece que não consegue convencer Mercurial a fazer o mesmo ...

Foi útil?

Solução

Carl Meyer é certo. Você está pensando como um usuário git, e Mercurial alças coisas de forma diferente.

Você poderia fazer o que Carl sugeriu e apenas forçar o próximo commit para estar no ramo dev. Eu, pessoalmente, acho isso bastante confuso se eu vi ele, porém, uma vez que haveria uma descontinuidade no ramo dev.

A maneira que eu lidar com isso é mesclar o ramo de volta recurso em: hg update dev && hg merge feature && hg commit -m 'Merge in the completed feature.'

Isso resultaria em um gráfico como:

  a - dev
  b - dev
  c - dev
  d - dev
 /|  
e | - feature
f | - feature
 \|
  g - dev

Para mim, isto ilustra claramente exatamente o que aconteceu. Você ramificou-se para um novo recurso e fundiu-lo para o ramo dev quando terminar. O fato de que não havia outros commits no dev, entretanto é apenas uma coincidência e não tem que mudar o fluxo de trabalho.

Outras dicas

ramos nomeados em hg (ao contrário de git) não em qualquer lugar "ponto". nomes do ramo não são aliases móveis para uma rev particular. Cada commit tem um marcador de metadados nomear o ramo que cometem está ligado; isso é tudo.

Nesta situação, se você não tem submissões separadas descendentes de "d" no ramo dev, então tudo que você precisa fazer é executar "dev ramo hg" e, em seguida, seu próximo commit, descendente de "f" , estará de volta em dev ramo. Que eu acho que vai conseguir os resultados que você está procurando.

Editar :. Esse trabalho vontade, mas a sugestão de fazer uma mesclagem real irá resultar em uma história mais sensata de Steve Losh

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