Domanda

Lavoro in un team di 2 sviluppatori e attualmente utilizziamo VSS e non ho integrazione continua o build giornaliera e pochi test unitari.

Sto cercando di cambiare il nostro controllo del codice sorgente in Subversion e allo stesso tempo di iniziare con un processo più professionale.

Subversion / cruise control / nant / nunit appare una combinazione abbastanza popolare da quello che ho visto finora e li ho appena installati su una macchina di riserva.

Ho scaricato il manuale di sovversione e sono lunghe 400 pagine per uno solo degli strumenti!

In realtà voglio solo alzarmi e correre usando schemi collaudati già provati in natura e poi modificare come richiesto e man mano che aumenta la mia familiarità con gli strumenti.

Qualcuno è a conoscenza di qualche libro / tutorial / procedura dettagliata che copre solo gli elementi essenziali per mettermi in funzione al più presto con questa particolare combinazione di strumenti?

È stato utile?

Soluzione

Uso Subversion da diversi anni e devo dire che la migliore introduzione che ho trovato è inclusa nel file di aiuto di TortoiseSVN. TortoiseSVN è un altro client gratuito per Windows con l'integrazione di Explorer. Consiglio vivamente di leggere prima l'aiuto di Tortoise, anche prima dei documenti originali di sovversione. Se necessario, ti rimanda ai documenti ufficiali.

Anche la tartaruga è il mio cliente preferito. In effetti, sulla maggior parte delle macchine è l'unico componente di sovversione di cui ho bisogno. Svolge tutte le funzioni che uso abitualmente, inclusa la creazione di repository. Anche se questo non è un colpo per i normali strumenti da riga di comando, e li installo anche nella maggior parte dei casi, trovo solo gli strumenti di cli necessari per l'automazione dagli script e (raramente) funzioni di manutenzione del repository.

Sono in procinto di riorganizzare il nostro ambiente di costruzione al lavoro, quindi sto esaminando le opzioni per molti strumenti di costruzione / sviluppo. Ecco gli strumenti che posso consigliare o venire con buoni consigli da altri:

WinMerge: strumento diff gratuito altamente raccomandato, installa dopo TortoiseSVN per la migliore integrazione. Uso questo strumento su base giornaliera per molti scopi, alcuni al di fuori dello sviluppo.

TeamCity: server CI che sembra essere ben rifinito. Non l'ho ancora provato, ma è il contendente principale su CC.NET data la mia esperienza con CC.NET (un anno) e le buone recensioni che riceve. Hudson è un'altra opzione ben rivista.

VisualSVN Server: un server http (s) gratuito consigliato per SVN con integrazione AD per le autorizzazioni e una console msc in stile microsoft. Ho appena finito di implementarlo sul posto di lavoro ed è molto semplice. Un must se si desidera effettuare il check-in / check-out remoto (IP), la crittografia SSL, gli script hook del repository e altre funzionalità basate su server.

VisualSVN: un plug-in Visual Studio ben rivisto per SVN. Non ho provato questo, ma è considerato un acquisto semplice. [Modifica: secondo quanto ho letto qui su overflow, AnkhSVN è un'opzione gratuita che funziona allo stesso modo.]

SVN-Monitor: software di monitoraggio gratuito consigliato che avvisa l'utente delle modifiche al repository. Configurabile su ciò che controlla e l'azione che intraprende. Dipende dall'installazione di TortoiseSVN.

BugTracker.NET: server di tracciamento dei problemi gratuito consigliato. Presenta l'integrazione SVN per legare i problemi rilevati alle revisioni di sovversione. Non sono sicuro che TeamCity abbia una funzionalità simile ma la utilizziamo già al di fuori dello sviluppo per tenere traccia dei problemi dell'helpdesk ed è ottima per un pacchetto gratuito.

Non ho esperienza con test unitari, copertura, strumenti di documentazione per .NET, quindi non posso commentare lì.

Sono un Pythonista, quindi inserirò una cosa che Python può essere utile per SVN wrt, ovvero che puoi usare la libreria PySVN per eseguire qualsiasi tipo di lavoro di repository automatizzato che è troppo complesso per lo scripting con il comando- strumenti di linea. Lo uso per creare tag quando una build è pronta per essere taggata e distribuita.

Scegli alcuni di questi strumenti e sarai in vantaggio. Sviluppare processi attorno a loro e formare il personale, beh, è ??ancora un lavoro per te. :)

Altri suggerimenti

Ho registrato un video che illustra tutti i concetti di base, inclusa la configurazione di SubVersion, CruiseControl.NET. Ho anche illustrato una build non funzionante. Lo strumento di sviluppo utilizzato era Delphi ma avrebbe potuto facilmente essere VS.NET.

Se vuoi avere un server Subversion attivo e funzionante AL PIÙ PRESTO senza dover conoscere molto del repository, dai un'occhiata a Visual SVN qui . È un'app GUI che ti consente di impostare repository senza la necessità di leggere molta documentazione. C'è anche un dimecast al riguardo qui .

Per quanto riguarda l'integrazione con CC.NET, consultare la documentazione CC.NET sul blocco di controllo della sovversione qui , lo hanno suddiviso abbastanza bene nel loro sito e dovresti riuscire a trovare abbastanza facilmente i tag xml per svn.

Dovresti anche verificare l'implementazione degli strumenti lato client, come Tortoise SVN e Ankh SVN .

Per NANT, controlla questi dimecast qui . Grandi tutorial su come usare nant in modo efficace.

Dato che provieni da un background VSS, dai un'occhiata a SourceGear Vault e SourceGear Fortress . Se fanno quello che vuoi, saranno più veloci da imparare a causa del fatto che sono progettati per le persone con una mentalità VSS.

Penso che potrebbero anche essere liberi per le piccole squadre.

(Avrai comunque voglia di usare nUnit per i test, tuttavia vorrei prima ottenere il controllo del codice sorgente e l'integrazione continua.)

Se vai con Subversion scoprirai che è molto stabile e più che in grado di soddisfare le esigenze della maggior parte dei team. Dai un'occhiata a TortoiseSVN per un'interfaccia utente semplice su Subversion

Questo probabilmente non è utile alla domanda attuale ma ...

Non sto dicendo che non ce n'è uno ... ma anche se avessi questo manuale, avresti molto da imparare. Devi davvero imparare ognuno dei pezzi da solo prima di pensare di metterli tutti insieme.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top