Handige tips

Officiële site EasyCoding Team

Pin
Send
Share
Send
Send


SVN is een populair versiebeheersysteem. Het versiebeheersysteem wordt gebruikt wanneer meerdere mensen gezamenlijk bestanden bewerken. Als je correct met SVN werkt, overweldigen verschillende mensen elkaar niet en is er een mogelijkheid om te zien wie wanneer wat heeft veranderd.

TortoiseSVN - GUI-client voor SVN. Hieronder staan ​​voorbeelden van het werken met TortoiseSVN en een beschrijving van veelvoorkomende problemen. Voor een volledig begrip van het werk raad ik u aan de documentatie te lezen.

We nemen aan dat TortoiseSVN is geïnstalleerd en Russified. Het svn-repositoryadres ontvangen: //89.223.27.224/project waarin twee gebruikers Petya en Vasya zijn toegevoegd.

Een repository ophalen

In SVN is er altijd één centrale opslagplaats waarin alle wijzigingen worden opgeslagen. Gebruikers voor werk lossen zichzelf uit werkkopie.

Petya maakt een nieuwe projectmap aan en verwijdert een werkkopie.

In het extractie-dialoogvenster geeft het alleen het repository-adres aan

Een groen teken op het mappictogram geeft aan dat de map een werkkopie van SVN is en dat er geen wijzigingen in zijn aangebracht.

Er is een verborgen .svn-map verschenen in de projectmap. SVN slaat informatie met betrekking tot de werkkopie op.

Waar kan ik het programma downloaden?

U kunt het programma downloaden op de officiële website op de pagina Downloads: http://tortoisesvn.net/downloads. U kunt daar ook een lokalisatiepakket downloaden, dat naast het vertalen van de programma-interface ook een woordenboek voor spellingcontrole bevat (gebruikt bij het doorvoeren van wijzigingen (zie hieronder)).

TortoiseSVN is geïntegreerd in Windows Explorer (Windows Explorer) en alle acties ermee worden uitgevoerd vanuit het contextmenu van mappen (mappen).

Laten we beginnen met het eenvoudigste ding - het downloaden van een van de repositories naar uw computer.

SVN-repository downloaden (afrekenen)

Als u de repository van een project wilt downloaden, moet u de URL ervan kennen, evenals de login en het wachtwoord voor toegang (indien niet gespecificeerd, dan voor anonieme toegang (alleen-lezen), de login en het wachtwoord worden gebruikt anonsvn). URL's kunnen zijn:

  • standaard svn: // - verbinding rechtstreeks met de Subversion-server,
  • http: // - verbinding met de Subversion-server via het web (zo werken de meeste servers, omdat u hiermee een project kunt bekijken zonder een SVN-client rechtstreeks via een webbrowser te hebben),
  • https: // - hetzelfde als http: //, maar via SSL,
  • svn + ssh: // - svn via SSH (momenteel zelden gebruikt).

Stel dat we de URL kennen, dus om de repository te downloaden, moeten we het volgende doen:

  1. We maken een map waarin we repositories zullen downloaden (voor het gemak is het beter om alle repositories in één map op te slaan, bijvoorbeeld C: SVN).
  2. We gaan erin in Windows Explorer, klik met de rechtermuisknop op de vrije ruimte en selecteer 'SVN Afrekenen ...«.
  3. In het veld 'URL van repository"Schrijf de volledige URL naar de SVN-repository, die we moeten downloaden, en in het veld"Afrekenen directory»We corrigeren een manier waarop de lokale kopie wordt geplaatst. Waarschuwing! U hoeft alleen de map / trunk / svn-repository af te rekenen, of de root-map als / trunk / niet bestaat (zeer zelden, omdat 99% van de trunkrepository's bestaan ​​en altijd de nieuwste versie van bestanden bevatten).
  4. In de lijst met 'Check-out diepte"Geef"Volledig recursief“, Wat betekent dat de hele repository wordt gedownload van het opgegeven pad. Als u de "Laat externe apparaten weg“, Dan zullen externe bestanden waarnaar wordt verwezen in de repository (bijvoorbeeld van andere repositories of repositories van derden) niet worden gedownload, dus het wordt niet aanbevolen om dit vakje aan te vinken.
  5. In het blok "herziening"U kunt vragen om u de nieuwste versie van de repository te geven:"HEAD revisie"(Deze optie wordt aanbevolen), of de revisie die u in het veld wordt aangegeven:"Revisie ###"(Niet aanbevolen).
  6. Knop 'Toon logboek»Toont u een lijst met wijzigingen in de repository met informatie over de auteurs van elke wijziging, een beschrijving van de wijzigingen (als de auteurs deze hebben ingevoerd bij het doorvoeren van de wijzigingen), evenals een lijst met toegevoegde, gewijzigde en verwijderde bestanden. Hier kunt u zien hoe het bestand van de ene versie (versie) verschilt van het bestand van een andere, en kunt u ook vragen om een ​​verenigd diff-bestand te tonen van wijzigingen van verschillende bestanden of verschillende revisies (alleen weergegeven voor tekstbestanden). Lees hieronder meer over Log Viewer.
  7. Druk op de knop "OK»En we wachten op het downloaden van de repository van de Subversion-server (dit hangt af van de snelheid van uw internetverbinding, evenals van de belasting van de svn-server). Waarschuwing! Sommige SVN-servers kunnen om een ​​wachtwoord vragen. Als u het wachtwoord niet weet, voer dan in anonsvn zoals login en wachtwoord. Dit is de standaard gebruikersnaam / wachtwoord voor anonieme toegang. Als u uw wijzigingen in deze repository in de toekomst wilt publiceren en u hebt het recht om dit te doen, voert u hier uw gebruikersnaam en wachtwoord in.
  8. Klaar. In de map die u heeft aangegeven in de derde stap van de "Afrekenen directory»Nu is er een lokale versie van de repository (werkkopie).

De gedownloade repository bijwerken (Update)

SVN is gemaakt voor gemakkelijk projectbeheer en om ze actueel te houden, dus de op een na belangrijkste bewerking is het bijwerken van de gedownloade werkkopie. Het wordt aanbevolen uw werkkopieën zo vaak mogelijk bij te werken. Tijdens het bijwerken worden alleen gewijzigde bestanden gedownload, nieuwe toegevoegd en bestanden verwijderd uit de repository verwijderd. Om een ​​werkkopie bij te werken, hebt u dus nodig:

  1. We gaan naar de map waarin de bestanden van de gedownloade werkkopie zich in Windows Explorer bevinden.
  2. Klik met de rechtermuisknop op de vrije ruimte in de map en selecteer 'SVN-update«.
  3. In het venster dat wordt geopend, observeren we het updateproces: een lijst met toegevoegde, gewijzigde en / of verwijderde bestanden, het huidige versienummer. Hier kunt u klikken op de "Log weergeven ...»Lees de beschrijving van de wijzigingen (indien aangegeven) om de lijst te bekijken, vergelijk de huidige versie met de vorige, enz.
  4. Klik op 'OK»Om dit venster te sluiten. De repository is bijgewerkt naar de nieuwste versie.

Aan de slag

Nu hebben we een repository en we kunnen ermee werken.

  • We klikken op RMB op het bureaublad (dit kan elke map zijn) en selecteren het item "SVN om uit te pakken ..." in het contextmenu.
  • Hier is een venster als dit:

Zoals we kunnen zien, heeft TortoiseSVN automatisch onze repository in de map zabolotskikh.com gedetecteerd en biedt aan om gegevens eruit te extraheren naar de map "zabolotskikh.com" op het bureaublad. Ik hoop dat alles hier intuïtief is. Klik op "OK" en zie dat de gegevens uit de repository zijn geëxtraheerd naar de map "zabolotskikh.com" (deze is leeg voor u, aangezien u nog geen enkel bestand aan de repository hebt toegevoegd):

Nu kunt u alle acties met de bestanden uitvoeren en de wijzigingen doorvoeren. Laten we het bestand hernoemen en het vastleggen!

Ik heb het bestand "wp_login.php" hernoemd in "wp_login123.php" en besloot dit op te lossen:

Bevestig vervolgens de wijzigingen:

Hierna ziet u hoe de wijzigingen zijn opgelost:

Dat is alles! Gefeliciteerd, we hebben net geleerd hoe we Dropbox als server voor onze opslagplaatsen kunnen gebruiken!

Mogelijke fout

Wijzigingen in de repository moeten worden aangebracht terwijl Dropbox in de standby-modus staat (d.w.z. niets downloadt of pompt). Anders kan de foutmelding 'post-commit FS-verwerking fout', 'Kan map niet verwijderen' optreden:

Hallo beste lezer! Ik ben blij je te mogen verwelkomen op de pagina's van mijn blog. Ik ben al een aantal jaren bezig met webprogrammering en deel mijn kennis en advies graag met u. Als je mijn artikelen leuk vond, kun je je abonneren op de blognieuwsbrief, daar leer je veel interessante dingen over!

Uw wijzigingen opslaan in de repository (Commit)

Als u uw wijzigingen in de gedownloade repository wilt aanbrengen en u hebt het recht om dit te doen (het recht om zich te committeren aan de repository), begin dan gewoon met de lokale werkkopie als een normale map: maak, bewerk, verwijder bestanden en / of mappen. Om de repository te wijzigen, hebt u nu het volgende nodig:

  1. We gaan naar de map waarin de bestanden van de gedownloade werkkopie zich in Windows Explorer bevinden. Waarschuwing! Een werkkopie moet worden gedownload van de gebruikersnaam van de gebruiker die het recht heeft om wijzigingen door te voeren (commit vlag).
  2. Klik met de rechtermuisknop op de vrije ruimte in de map en selecteer 'SVN Commit ...«.
  3. In het venster dat wordt geopend, 'plegen"In de sectie"bericht»We introduceren een korte beschrijving van onze wijzigingen (dit wordt altijd aanbevolen, vooral als u niet de enige bent die aan het project werkt), maar u kunt de beschrijving leeg laten (niet aanbevolen, omdat andere ontwikkelaars of gebruikers niet kunnen begrijpen wat er is gewijzigd). Het is toegestaan ​​om letters van nationale alfabetten in dit veld te gebruiken (er is volledige Unicode-ondersteuning), maar helaas geven sommige svn-webclients (die een lijst met wijzigingen in de browser weergeven) in plaats van Russische letters krakozyabry weer. TortoiseSVN heeft deze fout niet.
  4. In de sectie "Wijzigingen aangebracht (dubbelklik op bestand voor diff)»U ziet een lijst met alle gewijzigde, toegevoegde en verwijderde bestanden van uw lokale werkkopie. Gewijzigde bestanden krijgen automatisch vlaggen, andere niet. Vink de vakjes aan voor die bestanden waarvan de wijzigingen moeten worden geüpload naar de svn-server (er is een vlag - het bestand is bijgewerkt, toegevoegd, verwijderd, geen vlag - blijft ongewijzigd). Dubbelklik op het bestand om het Tortoise Merge-hulpprogramma te starten (ontworpen om bestandsversies te vergelijken), dat de nieuwste versie van het bestand uit de SVN-repository in het linkervenster en de huidige werkkopie aan de rechterkant toont. Wijzigingen worden gemarkeerd: verwijderde regels worden doorgestreept, toegevoegde regels worden gemarkeerd.
  5. Na het selecteren van de benodigde bestanden of alles tegelijk ("Alles selecteren / deselecteren"), Klik op de"OK»En wacht tot de wijzigingen zijn gedownload naar de server. Er wordt een venster geopend met een lijst met toegevoegde, gewijzigde en / of verwijderde bestanden, evenals het huidige revisienummer.

Werk met de repository rechtstreeks op de server

Soms moet u met de svn-repository rechtstreeks op de server werken zonder deze naar de lokale computer te downloaden. Voor deze doeleinden is er een hulpprogramma "SVN Repo-browser“, Ook onderdeel van TortoiseSVN. Met haar werken is heel eenvoudig:

  1. Start Windows Explorer, ga naar een map, klik met de rechtermuisknop op een lege plek en selecteer 'SVN Repo-browser«.
  2. In het venster dat wordt geopend, 'URL"Voer de volledige URL in van de svn-repository die we nodig hebben en klik"OK«.
  3. Het hoofdvenster van het hulpprogramma wordt geopend: "% URL% - Repository Browser"Waar % Url% - URL van de repository. U kunt in dit venster op dezelfde manier werken als in Windows Verkenner. Slepen en neerzetten ingeschakeld. Via het contextmenu van het bestand / de map kunt u:
    • verwijderen 'Verwijderen ..."Omgedoopt tot"andere naam geven»Bestanden en mappen (mappen),
    • bestand toevoegen ('Bestand toevoegen ...") Of map ("Map toevoegen ...") Naar de repository,
    • maak een lege map ("Maak een map") In de repository,
    • download ("Afrekenen ...") Repository (zie hierboven),
    • pak een bestand of map uit de repository zonder servicemappen ("Exporteren ..."). De uitgepakte map verschilt van de werkkopie omdat deze niet kan worden bijgewerkt en geen verborgen service-mappen .svn bevat,
    • maak een tak of tag ("Kopiëren naar ...«),
    • verander de eigenschappen van een bestand of map ("Eigenschappen weergeven«).
  4. Elke wijziging vereist dat de commentaartekst wordt ingevoerd (het is toegestaan ​​om het veld niet in te gaan en leeg te laten) en verhoogt het revisienummer met één. Wijzigingen worden onmiddellijk toegepast.
  5. Klik op de 'OK»Om de Repository Browser te verlaten.

Maak takken of tags in de repository

Als u aan een groot project werkt, is het raadzaam om een ​​afzonderlijke tag voor elke openbare stabiele versie (1.0, 1.1, 2.0, enz.) Te maken, / tags / RELEASE- Mj. Mn waarin Mj - Hoofdversie, en Mn - Kleine versie van het project. Voorbeeld: /tags/RELEASE-1.0 (voor versie 1.0), /tags/RELEASE-2.63 (voor versie 2.63), enz. Waarschuwing! Tags worden NIET aangemaakt in de / trunk / map, maar erboven één niveau! Om een ​​label of branch te maken, heb je nodig (je moet het recht hebben om je te verbinden aan de repository om labels of branches te maken):

  1. We gaan naar de map waarin de bestanden van de gedownloade werkkopie zich in Windows Explorer bevinden.
  2. Klik met de rechtermuisknop op een lege plek en selecteer 'TortoiseSVN» — «Branch / tag ...«.
  3. In het venster dat opent, in de "Url»Voer de volledige URL in met het pad naar de nieuwe tag. Voorbeeld: http: //uw_project.svn.sourceforge.net/tags/RELEASE-1.0 (dit is slechts een voorbeeld, paden moeten naar uw project wijzen).
  4. In de sectie "Maak een kopie in de repository van"Geef"HEAD revisie in de repository"(Laatste revisie, aanbevolen) of specificeer het revisienummer handmatig door"Specifieke revisie in de repository ###", Of maak een tag van de huidige werkkopie van"Werkend exemplaar"(Niet aanbevolen).
  5. In de sectie "Log bericht»Geef een opmerking over de audit op (bijvoorbeeld % PROJECT TITLE %% PROJECT VERSION% vrijgegeven).
  6. Klik op 'OK". Vinkje in de regel "Schakel werkkopie naar nieuwe tak / tag»Instelling wordt niet aanbevolen, omdat hierdoor wordt uw huidige werkkopie naar een nieuw pad verplaatst, wat kan leiden tot verschillende fouten en problemen.

Terugdraaien verandert in een werkkopie

Als je een fout hebt gemaakt tijdens het werken met de lokale repository, bijvoorbeeld een bestand hebt beschadigd, onjuist is bewerkt, enz., Dan kan dit eenvoudig worden opgelost:

  1. We gaan naar de map waarin de bestanden van de gedownloade werkkopie zich in Windows Explorer bevinden.
  2. Klik met de rechtermuisknop op een lege plek en selecteer 'TortoiseSVN» — «Terugzetten ...«.
  3. In het venster dat wordt geopend, ziet u een lijst met alle gewijzigde bestanden van uw werkkopie. Vink het vakje aan voor het bestand dat u wilt terugzetten naar de versie vanuit de repository, of selecteer alle bestanden tegelijk ("Alles selecteren / deselecteren"). Dubbelklik op een bestand om de verschillen met het originele bestand te tonen.
  4. Klik op 'OK". De geselecteerde bestanden worden hersteld en de gewijzigde bestanden worden naar de Prullenbak van Windows verzonden.

Werken met Log Viewer

Log Viewer-hulpprogramma, gestart nadat u op de knop 'Log weergeven ...", Of door met de rechtermuisknop op een lege plek in het lokale werkexemplaar te klikken -"TortoiseSVN» — «Toon logboek". Standaard geeft het hulpprogramma de laatste 50 revisies en hun beschrijvingen weer (als deze tijdens de commit zijn ingevoerd). Alle basisacties worden uitgevoerd vanuit het contextmenu van de revisie:

  • «Vergelijk met een kopie»- vergelijk de huidige (geselecteerde) revisie met de lokale werkkopie. Een lijst met wijzigingen wordt getoond in Tortoise Merge.
  • «Wijzigingen weergeven als uniforme diff»- toon wijzigingen in geselecteerde revisies als een verenigd patchbestand (verenigd verschil). Als slechts één revisie is geselecteerd, wordt deze vergeleken met de vorige (revisie 87 is bijvoorbeeld gemarkeerd, deze wordt vergeleken met 86).
  • «Vergelijk met vorige revisie"- toon wijzigingen in de gemarkeerde en vorige revisie. Een venster met verschillende bestanden wordt weergegeven, dubbelklikken op het bestand zal het openen in Tortoise Merge om de wijzigingen te bekijken.
  • «Vergelijk en beschuldig met vorige revisie"- hetzelfde als de vorige, maar het laat regel voor regel zien wie en wanneer wijzigingen in het bestand hebben aangebracht.
  • «Blader door repository"- opent de hierboven beschreven Repository Browser voor direct werk met de repository.
  • «Maak tak / tag van revisie»- hiermee kunt u een tak of tag maken van een geselecteerde revisie (zie hierboven).
  • «Update item naar revisie"- updates van de gemarkeerde revisie.
  • «Keer terug naar deze herziening"- hiermee kunt u teruggaan naar de geselecteerde revisie.
  • «Zet de wijzigingen van deze revisie terug"- hiermee kunt u alle wijzigingen ongedaan maken die in de geselecteerde revisie zijn aangebracht.
  • «Herzieningen samenvoegen tot ..."- hiermee kunt u verschillende revisies combineren in een werkkopie.
  • «Afrekenen ..."- download de gemarkeerde revisie (zie hierboven).
  • «Exporteren ...»- haal de geselecteerde revisie op zonder servicemappen.
  • «Bewerk auteur"- bewerk de naam van de auteur van de geselecteerde revisie (beheerdersrechten zijn vereist).
  • «Logboekbericht bewerken"- hiermee kunt u de beschrijvingstekst van de geselecteerde revisie bewerken (u hebt beheerdersrechten nodig).
  • «Revisie-eigenschappen weergeven"- toon de eigenschappen van de geselecteerde revisie.
  • «Kopiëren naar klembord"- kopieer het nummer van de gemarkeerde revisie, auteur, beschrijving en lijst met gewijzigde bestanden naar het Windows klembord.
  • «Doorzoek logboekberichten»- start een zoekopdracht in de revisiebeschrijvingen.

Knop 'Alles tonen"Zal alle revisies tonen, en"Toon bereik ...»Hiermee kunt u het bereik van revisies instellen dat wordt weergegeven in het venster Log Viewer.

Knop 'statistiek"Toont verschillende statistische informatie: de meest actieve en minst actieve auteur, het aantal wijzigingen in de repository per week, het totale aantal wijzigingen, enz.

Pin
Send
Share
Send
Send