A funcionalidade Forks no Ligo Bots permite criar cópias isoladas do seu bot para testar e implementar alterações sem impactar a versão principal (Main). Inspirada no conceito de “branching” de sistemas como o Git, essa ferramenta oferece um ambiente seguro para experimentação, desenvolvimento e validação de novas funcionalidades ou correções.
Conceitos principais
- Forks: Cópias completas e independentes do bot, usadas como ambientes isolados para desenvolvimento e testes.
- Main: Versão principal e oficial do bot, utilizada em produção.
- Merge: Processo de integrar as alterações feitas em um Fork de volta à Main, atualizando a versão principal.
- Pull: Ação de atualizar um Fork com as mudanças mais recentes da Main, mantendo o Fork sincronizado.
Ações disponíveis nos Forks
- Testar: Executar testes no Fork, garantindo que as alterações funcionem como esperado.
- Editar fluxo: Modificar o fluxo do bot apenas no Fork, sem afetar a Main.
- Excluir: Remover o Fork quando não for mais necessário.
Estados do Fork
- Creating: O Fork está sendo criado.
- Ready: O Fork está pronto para edição e testes.
- Pulling: O Fork está sendo atualizado com as alterações da Main.
- Merging: As alterações do Fork estão sendo integradas à Main.
- Error: Ocorreu um erro durante a criação, atualização ou merge do Fork.
Regras e limitações
- Qualquer usuário com permissão pode criar, editar e gerenciar Forks.
- Cada bot pode ter até 10 Forks simultâneos.
- As ações de criação, pull e merge são processadas isoladamente para cada bot, evitando conflitos.
- Não é possível editar, excluir ou testar um Fork enquanto ele está em pull ou merge.
- Em caso de erro, recomenda-se não alterar a Main até o suporte resolver o problema.
Funcionamento no editor de fluxo
- Itens vindos da Main têm conectores na cor padrão; novos conectores criados no Fork aparecem em verde.
- Conflitos de conectores (como duplas ligações de destino) são sinalizados e precisam ser resolvidos antes do merge.
- O merge pode ser feito tanto para a Main quanto para outro Fork.
- Forks são exclusivos para edições de fluxo e compartilham variáveis e tags com a Main.
- Conflitos de alterações são apresentados para escolha entre manter a versão da Main ou do Fork.