Recuperar um ramo e resolver conflitos
Quer reunir vários commits locais antes de pedir uma revisão. Confirme o ramo atual e guarde as edições de que ainda precisa. O snapshot regista referências a commits. O stash guarda alterações que ainda não entraram num commit.
Antes de alterar o histórico
O Riff tenta registar o HEAD atual e os dados do ramo upstream antes de operações como rebase, squash, cherry-pick, merge, revert, reset, amend e push forçado. Mantém até 50 snapshots por repositório neste computador. Um repositório vazio ainda não tem um commit para restaurar. Verifique se a opção de anular está disponível para a operação pretendida.
Se o Riff sugerir guardar as alterações num stash, reveja o conteúdo e confirme ou cancele. Depois da operação, abra a lista de stashes e escolha quando restaurar a entrada. Aplicar mantém o stash na lista. Um pop bem-sucedido restaura as alterações e remove a entrada.
Quando o Git indicar um conflito
- Consulte a operação em curso no aviso e abra um ficheiro em conflito. Compare as duas versões e a base comum, se disponível. Durante um rebase, leia o conteúdo antes de escolher Ours ou Theirs. O Git identifica os lados do ponto de vista da operação.
- Escolha uma versão para todo o ficheiro ou use o editor de três vias e decida, por região, se pretende uma versão, ambas ou texto escrito por si. Reveja e guarde o resultado.
- Resolva os restantes ficheiros e continue quando essa opção estiver disponível. Para cancelar a operação em curso e começar de novo, use a opção de abortar.
Anular, refazer e atualizar o remoto
Anular repõe o commit local registado através de um hard reset. Proteja as edições atuais antes de confirmar. Refazer continua disponível após reiniciar a aplicação se o HEAD ainda corresponder ao estado deixado ao anular. Se o histórico mudou, examine o gráfico antes de prosseguir.
O push forçado usa --force-with-lease. Se o ramo remoto tiver uma revisão diferente da esperada pelo Git, o envio é recusado. Faça fetch e examine os commits recebidos. Anular depois de um push altera a cópia local. Atualizar o servidor exige outro push e a permissão correspondente no serviço de alojamento.