svn tutorial source code management using subversion
Introduzione alla gestione del codice sorgente utilizzando Subversion (SVN):
Benvenuti nella serie Subversion (SVN). Questo tutorial informativo su SVN spiega le basi del concetto di versioning del software e come SVN può essere utile per il team di sviluppo.
Cos'è SVN?
SVN è uno strumento di gestione della configurazione software (SCM) semplice e open source che può essere utilizzato in tutte le fasi dei progetti software.
- SVN è uno strumento di controllo di Subversion che ci aiuta a mantenere tutti gli artefatti del progetto in un repository di script.
- È uno strumento gratuito / open source che ci aiuta a gestire il controllo delle versioni del software e il sistema di controllo delle revisioni.
- È facile da capire e funziona più velocemente rispetto agli altri strumenti ( Per esempio, GIT, mercuriale).
Leggi questo primo tutorial della serie sulle basi di Sovversione accuratamente prima di passare a quello successivo.
Elenco dei tutorial in questa serie di Subversion:
Tutorial n. 1: Tutorial SVN: gestione del codice sorgente mediante Subversion
Tutorial n. 2: Come configurare il repository SVN e installare il client SVN Tortoise
Tutorial n. 3: Tutorial SVN tartaruga: revisioni nel repository di codice
Tutorial n. 4: Come eliminare i contenuti dal repository SVN
Panoramica dei tutorial nella serie Subversion:
Numero tutorial | Cosa imparerai |
---|---|
Tutorial_ # 1: | Tutorial SVN: gestione del codice sorgente mediante Subversion Questo tutorial informativo su SVN spiegherà le basi del concetto di versioning del software e come SVN può essere utile per l'intero team. |
Tutorial_ # 2: | Come configurare il repository SVN e installare il client SVN Tortoise Imparerai come configurare un repository del server gratuito e un'interfaccia utente del client SVN Tortoise gratuita per importare ed esportare codice da / verso il repository da questo tutorial. |
Tutorial_ # 3: | Tutorial SVN tartaruga: revisioni nel repository di codice Questo tutorial ti illustrerà come utilizzare il client SVN Tortoise per il check-out e il check-in del codice da / al repository con semplici esempi pratici per una facile comprensione. |
Tutorial_ # 4: | Come eliminare i contenuti dal repository SVN Questo tutorial SVN ti insegnerà come rimuovere il contenuto del codice dal repository. SVN ti aiuta a modificare la versione del tuo progetto. |
Cosa imparerai:
Terminologie di base
Prima di entrare nei dettagli, comprendiamo le terminologie di base che utilizzeremo in questo tutorial.
Repository: È un luogo o un repository centrale in cui sono archiviati tutti gli artefatti del nostro progetto come (Design, codice sorgente, documentazione, casi di test). I singoli utenti possono controllare localmente i file nella loro macchina locale e possono lavorarci sopra.
Poiché conserva tutte le informazioni sulla cronologia di un particolare artefatto, gli utenti possono tornare indietro e guardare nel registro per vedere 'Chi, quando e perché' è cambiato.
Checkout SVN: È un processo di trasferimento degli artefatti del progetto dal repository centrale alla macchina locale. Gli utenti possono apportare modifiche e possono salvare le modifiche in locale.
Commettere: È un processo di salvataggio delle modifiche dalle macchine locali al repository centrale. Durante il commit, dovremmo fornire messaggi di commit significativi in modo che gli altri utenti possano facilmente capire.
Ora abbiamo capito le terminologie di base di SVN. Vedremo un esempio di come funziona nell'attività quotidiana.
Flusso di lavoro SVN
Si consideri uno scenario in cui il responsabile del team ha creato uno scheletro di Framework che contiene script di automazione. Ora sta cercando di caricarlo in una posizione centralizzata chiamata 'Automation Script Repository'.
I membri del team sono pronti per controllare gli script dello scheletro di automazione dal repository alle loro macchine locali. Una volta terminate le modifiche agli script, possono tornare indietro e salvarle nel repository centralizzato.
Scarica SVN
Passo 1: Visita il sito web di Google e digita 'Scarica SVN'.
Passo 2: Fare clic sul collegamento 'Scarica Tortoise SVN' dal sito Web, Tartaruga SVN
Passaggio 3: Scegli il collegamento, Tortoise SVN 1.9.6 - 64 bit / 32 bit a seconda del sistema operativo che hai nel tuo sistema.
il miglior software di sintesi vocale
Passaggio 4: Facendo clic sul rispettivo collegamento, inizia il download e viene visualizzato il file di installazione .msi nella parte inferiore dello schermo.
Passaggio 5: Fare clic sul file .msi ed eseguire l'installazione guidata facendo clic sul pulsante Avanti.
L'installazione di Tortoise SVN viene eseguita correttamente senza errori.
Plugin per lavorare Tortoise SVN tramite Java Eclipse
Per supportare il nostro Subversion nell'IDE Eclipse, dovremmo installare il plugin chiamato Eclipse Team provider o Subclipse Plugin.
Passo 1: Vai al Aiuto menu dal Ambiente IDE Eclipse e fare clic 'Marketplace Eclipse' .
Passo 2: genere Sottoclissi nella casella di testo Trova e fare clic su Pulsante Vai .
Scegli il primo collegamento, Subclipse 4.2.3 e quindi fai clic su Installare pulsante.
Passaggio 3: Verrà visualizzata una finestra di dialogo come mostrato di seguito. Clicca il Confermare per continuare con il processo di installazione.
Passaggio 4: Accetta la licenza del software Subclipse e fai clic su finire pulsante.
Il plugin Subclipse è stato aggiunto con successo all'IDE di Eclipse.
Creazione di framework in Java Eclipse
Viene creato un modello di struttura di esempio denominato 'Hybrid_Framework' utilizzando il modello di progettazione Java Page Object Model (POM). Viene creato un progetto Maven con tutti i codici sorgente scritti nella cartella src / test / java.
Vengono creati due pacchetti con i nomi com.qspiders.Pages e com.qspiders.Tests.
Qui stiamo cercando di eseguire l'operazione di accesso. Una volta che il login ha avuto esito positivo, passa a un'altra pagina chiamata 'EnterTimeTrack' .
- Tutte le azioni e le verifiche vengono eseguite nell'ambito del com.qspiders.Pages pacchetto.
- La creazione di oggetti di quella particolare pagina e l'esecuzione dello script vengono eseguite sotto com.qspiders.Tests pacchetto
Creazione di repository
Passo 1: Per la creazione del repository, vai alla cartella in cui è salvato il progetto e Fare clic con il pulsante destro del mouse su Tortoise SVN e scegli 'Crea repository qui' opzione.
Passo 2: La creazione del repository viene eseguita correttamente sul percorso specificato.
cos'è il controllo di qualità e la garanzia di qualità
Passaggio 3: Possiamo vedere il cambio di icona nella creazione del framework (POM_Framework).
Inserimento del framework nel repository
Passo 1: Fare clic con il pulsante destro del mouse su Progetto e scegliere Team -> Condividi progetto .
Passo 2: Scegliere SVN e fare clic su Avanti.
Passaggio 3: Selezionare 'Crea un nuovo percorso del repository' e fare clic su Avanti.
Passaggio 4: Fornisci l'URL che hai fornito per la creazione del repository e fai clic su finire pulsante.
Passaggio 5: Abbiamo aggiunto con successo il nostro framework nella cartella del repository.
Checkout SVN
Stiamo cercando di estrarre la cartella del progetto POM_Framework seguendo i passaggi seguenti.
Passo 1: Fare clic con il pulsante destro del mouse fuori dal percorso della cartella e scegliere Checkout SVN .
Passo 2: Scegli il percorso del repository e fai clic su OK.
Passaggio 3: La cartella del progetto viene estratta con successo nel percorso indicato e imposta automaticamente il numero di revisione.
Commettere :La parte di codice seguente è stata aggiunta nel file LoginTests.java e stiamo cercando di eseguirne il commit nel repository.
Codice sorgente:
Package com.qspider.Tests; Public class LoginTests { Public static void main(String args()) { WebDriver driver = new FirefoxDriver(); driver.get('file:///E:/Uma/Selenium%20Programs/mypage.html'); WebElement txtFirstName = driver.findElement(By.id('txtfirstname')); txtFirstName.sendKeys('Uma'); WebElement txtLastName = driver.findElement(By.name('txtLastname')); txtLastName.sendKeys('Srinivasan'); WebElement txtPassword = driver.findElement(By.className('pi')); txtPassword.sendKeys('UmaPassword'); driver.findElement(By.tagName('a')).click(); driver.navigate().back() } }
Passo 1: Fare clic con il pulsante destro del mouse sul progetto e selezionare Team -> Impegna .
'Cosa abbiamo aggiunto / modificato / eliminato' .
Passaggio 3: Ora il file / cartella viene archiviato correttamente nel repository.
Perché hai bisogno di SVN?
Supponi di essere in procinto di sviluppare un progetto di automazione Selenium. Supponiamo che ci siano tre membri del team che lavorano su questo progetto: Tester A, Tester B, Tester C.
Supponiamo ora che ci siano 15 script di test di automazione che devono essere scritti. Quindi questi tre compagni di squadra decidono di dividere cinque script ciascuno tra di loro e iniziare ad automatizzarli. Ora, alla fine, uniranno tutti il loro codice e verrà creato il codice finale. La forma circolare blu nelle figure seguenti rappresenta il codice unito finale.
Se 'Tester A' decide di apportare alcune correzioni al suo pezzo di codice, dovrà trasferire l'intero codice unito nel suo spazio di lavoro locale in modo da poterlo correggere come mostrato nella figura seguente. Spazio di lavoro significa un semplice progetto Selenium.
Allo stesso modo 'Tester B' dovrà anche inserire l'intero codice nel suo spazio di lavoro se vuole apportare modifiche ai suoi casi di test.
Ma il problema che si presenterà è che ognuno avrà ora una versione diversa dello spazio di lavoro. Le modifiche che il 'Tester A' ha apportato al suo spazio di lavoro non saranno presenti nell'area di lavoro di 'Tester B' come mostrato di seguito. Non ci sarà sincronizzazione degli spazi di lavoro tra i membri del team.
come aprire il file chiave in Windows
Se un nuovo membro del team si unisce e desidera impostare il suo spazio di lavoro locale, ci sarà un conflitto su quale Tester dovrebbe dargli il suo spazio di lavoro? Quindi, ci sarà confusione. Qui stiamo parlando di tre tester, cosa succede se stai lavorando a un grande progetto di automazione che comprende molti tester?
Quindi, per risolvere questi problemi di sincronizzazione del codice e per garantire che tutti nel team siano sulla stessa pagina, utilizziamo Subversion SVN.
Ci sono molti altri strumenti sul mercato che aiutano nella gestione del codice sorgente. Pochi sono gratuiti (open source) come CVS (Concurrent Versioning System), RCS (Revision Control System), Git. Mentre alcuni hanno la licenza come Rational ClearCase.
Cos'è il repository SVN e cosa fa?
Il repository SVN fornisce un sistema di gestione attraverso il quale è possibile controllare le versioni del progetto e / o del software.
Quindi, è necessario disporre di un repository di server centralizzato (il server può essere Windows, Unix, basato su Linux, ecc.). Metteremo il nostro codice finale unito su questo server.
Supponiamo ora che il 'Tester A' controlli il codice dal server centralizzato noto come repository. Dopo aver apportato le modifiche desiderate al suo codice, torna al codice aggiornato nel repository. Ora 'Tester B', quando verifica il codice, ottiene il codice più recente dal repository.
Allo stesso modo, ognuno apporta le rispettive modifiche e quindi aggiorna (archivia) il codice nel repository.
Quindi tutti sono sincronizzati e sono sulla stessa pagina.
Conclusione
Questo tutorial ci ha aiutato a comprendere i concetti di base di SVN. Abbiamo iniziato con le terminologie di base di SVN e poi siamo passati all'installazione, alla configurazione dei plug-in, alla progettazione del framework e alla creazione del repository. Abbiamo anche visto cos'è un repository e cosa fa.
Infine, abbiamo imparato come eseguire il push del framework nel repository, il checkout dei file e il commit.
Nel prossimo tutorial vedremo come configurare un nostro repository gratuito.
Lettura consigliata
- Tutorial approfonditi su Eclipse per principianti
- Tutorial SVN tartaruga: revisioni nel repository di codice
- Tutorial sull'integrazione di JIRA e SVN
- Come configurare il repository SVN e installare il client SVN Tortoise
- Tutorial Bugzilla: Tutorial pratico dello strumento di gestione dei difetti
- Come eliminare i contenuti dal repository SVN
- Tutorial AWS CodeBuild: estrazione del codice da Maven Build
- Tutorial sulla migrazione da SVN a IBM Rational Team Concert