Eu tenho um ramo git chamado 9-sign-in-out
com um código que funciona perfeitamente e quero transformá-lo no mestre. Atualmente, estou no ramo principal.
$ git branch
9-sign-in-out
* master
Estou tentando mudar para o 9-sign-in-out
ramo, mas isso não me permite:
$ git checkout 9-sign-in-out
app/helpers/application_helper.rb: needs merge
config/routes.rb: needs merge
error: you need to resolve your current index first
Alguma idéia de como posso ignorar todos os erros de ramificação mestre e transformar a 9-sign-in-out
ramificação em mestre? Talvez git rebase ? Mas não quero perder o código na 9-sign-in-out
ramificação.
git
branch
git-merge
git-branch
Sayanee
fonte
fonte
Respostas:
Vale a pena entender o significado dessas mensagens de erro -
needs merge
eerror: you need to resolve your current index first
indicar que uma fusão falhou e que há conflitos nesses arquivos. Se você decidiu que qualquer fusão que você estava tentando fazer era uma péssima ideia, você pode colocar as coisas de volta ao normal com:No entanto, caso contrário, você deve resolver esses conflitos de mesclagem, conforme descrito no manual do git .
Depois de lidar com isso por qualquer uma das técnicas, você poderá fazer o checkout do
9-sign-in-out
ramo. O problema de renomear seu nome9-sign-in-out
paramaster
, como sugerido na resposta da wRAR é que, se você compartilhou seu ramo mestre anterior com alguém, isso criará problemas para eles, pois se o histórico dos dois ramos divergir, você publicará reescrito história.Essencialmente, o que você quer fazer é mesclar seu ramo tópico
9-sign-in-out
emmaster
mas exatamente manter as versões dos arquivos no ramo tópico. Você pode fazer isso com as seguintes etapas:fonte
webrat.log
.)fonte
como sugerido em
git status
,Eu costumava
git add
terminar a fusão, depoisgit checkout
funciona bem.fonte
meu problema foi (mestre | REBASE 1/1)
esse comando funcionou para mim
fonte
git commit -m "Conflito fixo mestre mesclado."
fonte