A regra geral é manter os check-ins pequenos e fazer check-in com frequência. Mas, às vezes, a tarefa exige grandes alterações na estrutura subjacente. Em seguida, fazer o check-in antes de executar a tarefa interromperá o projeto até você fazer o check-in do trabalho finalizado.
Então, quais estratégias as pessoas usam para reduzir o risco de perder o trabalho ou decidir que algo está sendo feito é a abordagem errada e depois mudar de idéia depois de remover o código e tentar outra abordagem?
Quando eu puder, eu vou fazer o check-in, meio trabalho comentado ou, se ele compilar e nada estiver usando novos arquivos, eu os verificarei. Quanto maior a alteração, maior a probabilidade de eu ramificar o projeto e depois voltar atrás quando eu tiver tudo funcionando novamente. Outra opção que o sistema de controle de origem permite são os conjuntos de prateleiras, que são basicamente pequenos ramos. Então, quando terminar o dia ou chegar a um ponto de decisão, arquivarei minhas alterações e, se algo catastrófico acontecer, ou se eu quiser voltar a esse ponto, posso.