ti-enxame.com

Criando ramificação git com base em outra ramificação

Eu gostaria de criar uma filial local com base em outra filial. Por exemplo, eu digito:

git checkout -b feature1 release1.1.3

Depois disso eu recebo:

fatal: git checkout: updating paths is incompatible with switching branches.

Qual é o problema com isso ?

20
Leszek Andrukanis

Para criar uma ramificação com base em outra ramificação, a maneira mais simples é fazer check-out da ramificação base e criar uma nova ramificação a partir daí. Se entendi bem a sua pergunta, é exatamente isso que você quer fazer.

Agora, como você está usando o -b em sua ramificação, você pode ter alterações de trabalho que deseja manter. Se for esse o caso, você deve colocá-los no esconderijo, verificar o ramo base, criar o novo ramo e estourar o esconderijo.

17
ssube

Faz git pull primeiro para garantir que todas as filiais locais estejam atualizadas. E então você pode cortar o galho.

A sintaxe é

$ git checkout -b <branch> --track <remote>/<branch>

ou

$ git checkout <remote>/<branch> -b <branch>
11
zs2020
git branch <new-branch-name> <existing-branch-name>
10
Arun

Você quis dizer git branch feature1 release1.1.3 supondo que você queira que um ramo chamado feature1 seja baseado no commit do release1.1.3. O que você chamou lá também deve funcionar, mas você também tem uma pasta real chamada 'release1.1.3' na sua árvore de trabalho e o git está ficando confuso sobre se você quer dizer a ramificação/tag ou a pasta.

Você pode tentar apenas fornecer o ID de confirmação real do release1.1.3.

4
patthoyts