- Si accede all'applicazione di TW e dalla finestra di progetto si clicca sul tasto "Crea progetto derivato", che crea un nuovo branch. L'operazione duplica il progetto e ne cambia il GUID.
- Si scarica la copia master del branch per poterci lavorare in locale, mantendendo due file (progetto principale e progetto branch) che vivono quindi di vita propria.
- Quando si vogliono allineare le modifiche occorre aprire i due file e tramite l'utilizzo della showDiff riportare le modifiche a mano tramite il drag&drop, come spiegato qui.
- Di base c’è un branch master che rappresenta il progetto principale (com’è già adesso).
- Da inde eseguo il comando "nuovo branch", ne scelgo il nome e il mio progetto si posiziona sul branch appena creato. In questo momento inde crea lato server il progetto con guid cambiato.
- A questo punto effettuo le modifiche sul branch su cui sono posizionato e posso switchare da uno all'altro branch tramite un comando apposito (un po’ come fa ad esempio Eclipse). Quando lo faccio il progetto si aggiorna in automatico per allinearsi a quel branch.
- Infine dovrebbe esserci un unico comando per riversare le modifiche di un branch in un'altro branch, come se facessi un normale check-in. In pratica sarebbe il comando merge di SVN o Git. Se dovessero presentarsi dei conflitti inde dovrebbe segnalarlo e consentire al programmatore di risolverli manualmente.
Secondo me in questo modo sarebbero molto più usabili, Git ad esempio, che è uno dei migliori strumenti di controllo versione in circolazione (se non il migliore), mi pare funzioni proprio come ho descritto.
Ditemi cosa ne pensate e soprattutto se è fattibile.