svn tutorial source code management using subversion
Inleiding tot broncodebeheer met behulp van Subversion (SVN):
Welkom bij de Subversion (SVN) -serie. Deze informatieve SVN Tutorial legt de basisprincipes van het softwareversieconcept uit en hoe SVN nuttig kan zijn voor het ontwikkelteam.
Wat is SVN?
SVN is een eenvoudige en open-source licentietool voor softwareconfiguratiebeheer (SCM) die in alle fasen van softwareprojecten kan worden gebruikt.
- SVN is een Subversion-controletool die ons helpt om alle projectartefacten in een scriptrepository te onderhouden.
- Het is een gratis / open-source tool die ons helpt bij het beheren van softwareversie- en revisiecontrolesystemen.
- Het is gemakkelijk te begrijpen en werkt sneller in vergelijking met de andere tools ( Bijvoorbeeld, GIT, kwik).
Lees deze eerste tutorial van de serie over de basisprincipes van Subversie grondig voordat u doorgaat naar de volgende.
Lijst met tutorials in deze Subversion-serie:
Tutorial # 1: SVN-zelfstudie: broncodebeheer met behulp van Subversion
Tutorial # 2: Hoe SVN Repository in te stellen en Tortoise SVN Client te installeren
Tutorial # 3: Tortoise SVN-zelfstudie: herzieningen in coderepository
Tutorial # 4: Inhoud verwijderen uit de SVN-repository
Overzicht van handleidingen in de Subversion-serie:
Tutorial nummer | Wat je gaat leren |
---|---|
Tutorial_ # 1: | SVN-zelfstudie: broncodebeheer met behulp van Subversion Deze informatieve SVN-zelfstudie legt de basisprincipes van het softwareversieconcept uit en hoe SVN nuttig kan zijn voor het hele team. |
Tutorial_ # 2: | Hoe SVN Repository in te stellen en Tortoise SVN Client te installeren In deze tutorial leer je hoe je een gratis serverrepository en een gratis Tortoise SVN client-gebruikersinterface opzet om code van / naar de repository te importeren en exporteren. |
Tutorial_ # 3: | Tortoise SVN-zelfstudie: herzieningen in coderepository Deze tutorial zal je laten zien hoe je de Tortoise SVN-client kunt gebruiken om de code van / naar de repository uit te checken en in te checken met eenvoudige praktische voorbeelden voor je gemak. |
Tutorial_ # 4: | Inhoud verwijderen uit de SVN-repository In deze SVN-tutorial leer je hoe je de code-inhoud uit de repository kunt verwijderen. SVN helpt u bij het versieren van uw project. |
Wat je leert:
- Basisterminologieën
- Waarom heb je SVN nodig?
- Wat is de SVN-repository en wat doet het?
- Gevolgtrekking
Basisterminologieën
Laten we, voordat we ingaan op de details, de basisterminologieën begrijpen die we in deze zelfstudie zullen gebruiken.
Opslagplaats: Het is een centrale plaats of opslagplaats waar al onze projectartefacten zoals (ontwerp, broncode, documentatie, testcases) worden opgeslagen. Individuele gebruikers kunnen de bestanden lokaal op hun lokale computer uitchecken en eraan werken.
Omdat het alle geschiedenisinformatie van het specifieke artefact bijhoudt, kunnen de gebruikers teruggaan en in het logboek kijken om te zien dat 'Wie & wanneer en waarom' is gewijzigd.
SVN afrekenen: Het is een proces waarbij de projectartefacten van de centrale opslagplaats naar de lokale computer worden overgebracht. Gebruikers kunnen wijzigingen aanbrengen en kunnen wijzigingen lokaal opslaan.
Vastleggen: Het is een proces van het opslaan van de wijzigingen van lokale machines naar de centrale opslagplaats. Tijdens de vastlegging moeten we betekenisvolle vastleggingsberichten verstrekken zodat de andere gebruikers het gemakkelijk kunnen begrijpen.
Nu begrepen we de basisterminologieën van SVN. We zullen een voorbeeld zien van hoe het in de dagelijkse praktijk werkt.
SVN-workflow
Overweeg een scenario waarin de teamleider een Framework-skelet heeft gemaakt dat automatiseringsscripts bevat. Nu probeert hij het te uploaden naar een gecentraliseerde locatie genaamd ‘Automation Script Repository’.
De leden van het team staan klaar om de Automation-skeletscripts van de repository naar hun lokale computers te bekijken. Als ze eenmaal klaar zijn met de scriptwijzigingen, kunnen ze teruggaan en het vastleggen in de gecentraliseerde repository.
SVN downloaden
Stap 1: Bezoek de website van Google en typ ‘SVN downloaden’.
Stap 2: Klik op de link ‘Download Tortoise SVN’ van de website, Schildpad SVN
Stap 3: Kies de link Tortoise SVN 1.9.6 - 64 bit / 32 bit afhankelijk van het besturingssysteem dat je in je systeem hebt.
Stap 4: Door op de betreffende link te klikken, start het downloaden en krijgen we het .msi-installatiebestand onderaan ons scherm.
Stap # 5: Klik op het .msi-bestand en voer de installatiewizard uit door op de knop Volgende te klikken.
De installatie van Tortoise SVN is met succes voltooid zonder fouten.
Plugin om Tortoise SVN te werken via Java Eclipse
Om onze Subversion in de Eclipse IDE te ondersteunen, moeten we de plug-in genaamd Eclipse Team-provider of Subclipse-plug-in installeren.
Stap 1: Ga naar het Helpen menu van het Eclipse IDE-omgeving en klik op ‘Eclipse Marketplace’
Stap 2: Type Subclipse in het tekstvak Zoeken en klik op het Go-knop
Kies de eerste link, Subclipse 4.2.3 en klik vervolgens op het Installeren knop.
Stap 3: Een dialoogvenster zoals hieronder weergegeven, wordt weergegeven. Klik op de Bevestigen om door te gaan met het installatieproces.
Stap 4: Accepteer de Subclipse-softwarelicentie en klik op het Af hebben knop.
De Subclipse-plug-in is met succes toegevoegd aan de Eclipse IDE.
dot net interviewvragen en antwoorden voor ervaren
Framework creatie in Java Eclipse
Een voorbeeld van een framework-ontwerp genaamd ‘Hybrid_Framework’ met behulp van het Java-ontwerppatroon van het Page Object Model (POM) wordt gemaakt. Er wordt een Maven-project gemaakt met alle broncodes geschreven in de map src / test / java.
Er worden twee pakketten met hun namen com.qspiders.Pages en com.qspiders.Tests gemaakt.
Hier proberen we de inlogbewerking uit te voeren. Zodra het inloggen is gelukt, navigeert het naar een andere pagina met de naam ‘EnterTimeTrack’
- Alle acties en verificaties worden uitgevoerd onder de com.qspiders.Pages pakket.
- Het maken van objecten van die specifieke pagina en het uitvoeren van scripts wordt uitgevoerd onder de com.qspiders.Tests pakket
Creatie van een repository
Stap 1: Voor het maken van een repository gaat u naar de map waarin het project is opgeslagen en Klik met de rechtermuisknop op Tortoise SVN en kies ‘Maak hier een opslagplaats’ optie.
Stap 2: Het aanmaken van een opslagplaats is met succes voltooid op het opgegeven pad.
Stap 3: We kunnen het pictogram zien veranderen bij het maken van een framework (POM_Framework).
Het raamwerk naar de opslagplaats pushen
Stap 1: Klik met de rechtermuisknop op Project en kies Team -> Project delen
Stap 2: Kiezen SVN en klik op Volgende.
Stap 3: Selecteer ‘Maak een nieuwe opslagplaatslocatie’ en klik op Volgende.
Stap 4: Geef de URL die u heeft opgegeven voor het maken van een repository en klik op het Af hebben knop.
Stap # 5: We hebben ons framework met succes toegevoegd aan de repository-map.
SVN Afrekenen
We proberen de projectmap POM_Framework uit te checken door de onderstaande stappen te volgen.
Stap 1: Klik met de rechtermuisknop buiten het mappad en kies SVN Afrekenen
Stap 2: Kies het repository-pad en klik op OK.
Stap 3: De projectmap is met succes uitgecheckt in het genoemde pad en het stelt automatisch het revisienummer in.
Commit Het onderstaande stukje code is toegevoegd aan het LoginTests.java-bestand en we proberen het vast te leggen in de repository.
Broncode:
Stap 1: Klik met de rechtermuisknop op het project en selecteer Team -> Commit
Stap 3: Nu checkt het bestand / de map met succes in bij de repository.
Waarom heb je SVN nodig?
Stel dat u bezig bent met het ontwikkelen van een Selenium-automatiseringsproject. Laten we zeggen dat er drie teamleden aan dit project werken: Tester A, Tester B, Tester C.
Stel nu dat er 15 automatiseringstestscripts moeten worden geschreven. Dus besluiten deze drie teamgenoten om elk vijf scripts onder elkaar te verdelen en te automatiseren. Nu zullen ze uiteindelijk allemaal hun code samenvoegen en de definitieve code zal worden gebouwd. De blauwe ronde vorm in de onderstaande figuren vertegenwoordigt de uiteindelijke samengevoegde code.
Als ‘Tester A’ besluit om een correctie aan te brengen in zijn stuk code, dan zal hij de hele samengevoegde code in zijn lokale werkruimte moeten krijgen, zodat hij deze kan corrigeren zoals weergegeven in de onderstaande afbeelding. Workspace betekent een eenvoudig Selenium-project.
Evenzo zal ‘Tester B’ ook de hele code in zijn werkruimte moeten krijgen als hij wijzigingen wil aanbrengen in zijn / haar testgevallen.
Maar het probleem dat zich voordoet, is dat iedereen nu een andere versie van de werkruimte heeft. De veranderingen die ‘Tester A’ heeft aangebracht in zijn werkruimte, zullen niet aanwezig zijn in de werkruimte die ‘Tester B’ heeft, zoals hieronder weergegeven. Er vindt geen synchronisatie van werkruimten plaats tussen de teamleden.
Als een nieuw teamlid toetreedt en hij wil zijn lokale werkruimte inrichten, dan ontstaat er een conflict over welke tester hem zijn werkruimte moet geven? Er zal dus verwarring ontstaan. Hier hebben we het over drie testers, wat als u werkt aan een groot automatiseringsproject met veel testers?
Om deze codesynchronisatieproblemen op te lossen en ervoor te zorgen dat iedereen in het team op dezelfde pagina zit, gebruiken we Subversion SVN.
Er zijn veel andere tools op de markt die helpen bij broncodebeheer. Weinigen zijn gratis (open source) zoals CVS (Concurrent Versioning System), RCS (Revision Control System), Git. Sommige hebben een licentie zoals Rational ClearCase.
Wat is de SVN-repository en wat doet het?
De SVN-repository biedt een beheersysteem waarmee u de versies van uw project en / of software kunt beheren.
U hebt dus een gecentraliseerde serverrepository nodig (server kan op Windows, Unix, Linux, enz. Zijn gebaseerd). We zullen onze laatste samengevoegde code op deze server plaatsen.
Stel nu dat de ’Tester A’ de code controleert van de gecentraliseerde server die bekend staat als de repository. Nadat hij de gewenste wijzigingen in zijn code heeft aangebracht, checkt hij weer in op de bijgewerkte code in de repository. Nu krijgt ‘Tester B’, wanneer hij de code uitcheckt, de laatste code uit de repository.
Op dezelfde manier voert iedereen zijn respectievelijke wijzigingen door en werkt vervolgens de code in de repository bij (check-in).
Dus iedereen is gesynchroniseerd en staat op dezelfde pagina.
Gevolgtrekking
Deze tutorial heeft ons geholpen de basisconcepten van SVN te begrijpen. We zijn begonnen met de basisterminologieën van SVN en zijn toen overgegaan naar Installatie, Configuratie van plug-ins, Framework-ontwerp en het maken van opslagplaatsen. We hebben ook gezien wat een repository is en wat het doet.
Ten slotte hebben we geleerd hoe we het framework naar de repository en het uitchecken van bestanden kunnen pushen en vastleggen.
In de komende tutorial zullen we zien hoe we zelf een gratis repository kunnen opzetten.
Aanbevolen literatuur
- Diepgaande Eclipse-zelfstudies voor beginners
- Tortoise SVN-zelfstudie: herzieningen in coderepository
- JIRA- en SVN-integratiehandleiding
- Hoe SVN Repository op te zetten en Tortoise SVN Client te installeren
- Bugzilla-zelfstudie: Praktische zelfstudie voor hulpprogramma voor defectbeheer
- Inhoud verwijderen uit de SVN-repository
- AWS CodeBuild-zelfstudie: code extraheren uit Maven Build
- SVN naar IBM Rational Team Concert Migration Tutorial