Apache Subversion

Apache Subversion
Logo
VývojářApache Software Foundation
První vydání20. října 2000
Aktuální verze1.14.5 (8. prosince 2024)
Operační systémGNU/Linux
Microsoft Windows
macOS
BSD
UN*X
AIX
HP-UX
Solaris
BeOS
OS/2
Vyvíjeno vC, Python, C++, Java, Ruby a Perl
Typ softwarucentralized version control system, Apache Software Foundation project, svobodný software a otevřený software
LicenceApache License, Version 2.0
Websubversion.apache.org
Některá data mohou pocházet z datové položky.

Apache Subversion (dříve Subversion[1] – zkráceně SVN) je systém pro správu a verzování zdrojových kódů, náhrada za starší CVS. Snaží se zachovat podobný způsob a styl práce, ale odstranit nedostatky CVS jako například nemožnost přesunu nebo kopírování adresářů, časová a prostorová náročnost větvení a tagování a podobně.

Jednou z výhod systému Subversion je existence velmi dobré dokumentace (zatím v angličtině) – nazývá se Version Control with Subversion a je volně dostupná (viz odkazy). Další je existence více přístupových metod k repozitáři. Subversion je, tak jako CVS, založeno na principu centrálního repozitáře.

Popis nástroje Subversion

Subversion patří do kategorie version control nástrojů a uspokojuje základní potřeby při správě verzí. Je vyvíjen firmou CollabNet, Inc. a je šířen pod licencí, která umožňuje jeho bezplatné komerční použití, k dispozici jsou zdrojové kódy.

Důvodem jeho vzniku je snaha o nahrazení jiného velmi používaného systému, zvláště ve světě open source, CVS. Zčásti je Subversion systémem CVS inspirován, bere si z něj některé jeho vlastnosti, je však mnohem flexibilnější a jeho používání je snazší.

Lze ho provozovat na mnoha platformách, včetně Windows.

Skládá se ze dvou hlavních částí – klientská část a serverová.

Klientská část poskytuje nástroje pro práci s verzemi přímo v pracovním adresáři a komunikaci se serverovou částí, která se stará o repository (centrální úložiště).

K repository lze přistupovat různými způsoby (lokálně, přes nativní protokol svn://, DAV). Existuje několik klientských nástrojů, od příkazového řádku, přes webové rozhraní až po nástroje integrované do GUI operačního systému. Záleží na tom, co kterému uživateli vyhovuje nejvíce.

Základní pojmy a postupy

Repository (repozitář, centrální úložiště)
Umožňuje organizovat projekt a spravovat jeho verze. Fyzicky je uloženo na souborovém systému serveru. K repository se přistupuje přes Repository Access Layer (RA) systému Subversion a jeho správa se provádí klientskými nástroji.
Branch (větev)
Slouží k organizaci repository, jedná se o jakousi analogii s adresáři. Pokud se z repository vyzvedne větev, na klientovi vznikne adresářová struktura, která přesně odpovídá větvím v repository.
Revision (revize)
Revize je pořadové číslo každé změny. Slouží ke sledování změn ve větvích v čase. Každá změna v nějaké větvi vytvoří novou revizi v rámci celé repository. Revize obsahuje informace o tom, co bylo změněno, kdo změnu provedl, poznámku a čas.
Pracovní kopie
Kopie dat z určité větve z repository v aktuální revizi na pevný disk lokálního klienta. Do pracovní kopie je možné provádět změny, které je možné commitem uložit zpět do repository.
Commit
Odeslání změn provedených od posledního commitu do repository. Commit je nejčastěji používaná změna při práci s repository. Pokud se provádí commit celé pracovní kopie, jedná se o atomickou operaci, jsou odeslány veškeré změny ve všech objektech ve správě verzí; pokud dojde k nějaké chybě při přenosu, není commit pro ostatní uživatele repository zviditelněn, není vytvořena nová revize.
Konflikt
Konflikt je stav, který signalizuje, že stejný objekt, který má být právě commitován, byl změněn někým jiným a nachází se v repository v aktuální revizi v jiné podobě, než jaký je v pracovní kopii. Nelze provést commit celé pracovní kopie, pokud se v ní nachází jeden nebo více souboru v konfliktu.
Changeset
Changeset je sada změn, které se posílají z pracovní kopie do repository (nebo sada změn provedená v rámci repository). Subversion ukládá vždy jen informace o provedených změnách, tedy rozdíly mezi jednotlivými revizemi. Tím se spoří místo na disku a snižuje objem dat přenášených z klienta na server.
Merge
Sloučení změn z větve v repository do pracovní kopie. Lze specifikovat určitý rozsah změn, a to intervalem revizí.
Cheap-copy
Technika, kterou se realizují kopie prováděné v rámci repository. Objekty nejsou v repository fyzicky duplikovány, ale jsou vytvořeny tzv. odkazy (link) na kopírované objekty. Zjednodušeně lze chápat takovýto link jako informaci o URL s číslem revize. Díky tomu má SVN nízké nároky na datový prostor.

Správa verzí pomocí Subversion

Následuje příklad, jak probíhá správa verzí pomocí SVN. Předpokládejme, že je již v repository importovaný projekt, jedná se o zjednodušený proces, kdy požadavky jsou vyvíjeny za sebou, nikoliv paralelně.

  1. Vyzvednutí projektu (tzv. checkout) z repository do lokálního adresáře. Tím se vytváří pracovní kopie, která funguje jako pracovní prostor.
  2. Editace požadovaných souborů (přidání, mazání).
  3. Odeslání změn do repository (tzv. commit). Změny jsou viditelné pro všechny uživatele repository. Spolu se změnami se zapisuje čas jejich poslání do repository, autor a textový komentář. Další vývojář může pokračovat v práci.
  4. Další vývojář (pokud již má pracovní prostor) provede stažení aktuální verze z repository (tzv. update) a pokračuje ve vývoji. Vytvořené změny opět odešle do repository (tzv. commit).

Organizace repository

Z mnoha důvodu je třeba repository vhodným způsobem organizovat, pro organizování repository slouží větve. Vzhledem ke flexibilitě, kterou poskytuje díky konceptu cheap-copy, umožňuje Subversion měnit repository v souladu s aktuálně se měnícími požadavky.

Existuje několik osvědčených způsobů, jak repository v Subversion organizovat, záleží vždy na způsobu, jakým se daný projekt vyvíjí.

Související články

Reference

Externí odkazy

  • linuxsoft.cz – Seriál o Subversion na linuxsoft.cz (poskytující dostatečný úvod do problematiky)

Read other articles:

artikel ini tidak memiliki pranala ke artikel lain. Tidak ada alasan yang diberikan. Bantu kami untuk mengembangkannya dengan memberikan pranala ke artikel lain secukupnya. (Pelajari cara dan kapan saatnya untuk menghapus pesan templat ini) Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada Desember 2022. Mohammed N...

 

Di Semesta Ini Kita Pernah Gemilang Sampul edisi IndonesiaPengarangOcean VuongAudio dibaca olehOcean VuongNegaraAmerika SeriaktBahasaInggrisPenerbitPenguin GroupTanggal terbit4 Juni, 2019Jenis mediaPrint (Hardcover)Halaman256ISBNISBN 978-0-525-56202-3Desimal Dewey813/.6LCCPS3622.U96 O52 2019 Di Semesta Ini Kita Pernah Gemilang adalah novel debut dari Ocean Vuong, diterbitkan oleh Penguin Press pada 4 Juni 2019. Sebuah novel epistolari, yang ditulis dalam bentuk surat ...

 

How Sir Bedivere Cast the Sword Excalibur into the Water oleh Aubrey Beardsley, 1894 Excalibur adalah pedang Raja Arthur, menurut legenda memiliki kekuatan ajaib dan memberinya hak memerintah Inggris. Kadang Excalibur dan Sword in the Stone (bukti keturunan Arthur) dianggap sebagai senjata yang sama, tetapi dalam banyak versi keduanya dianggap berbeda. Dalam bahasa Wales pedang ini bernama Caledfwlch. Nama Excalibur berasal dari bahasa Prancis kuno Excalibor, yang berasal dari bahasa Latin Ca...

Brunei association football player In this Malay name, there is no surname or family name. The name Suhaimi is a patronymic, and the person should be referred to by their given name, Khairil Shahme. Khairil Shahme Khairil with Kasuka in 2023Personal informationFull name Mohammad Khairil Shahme bin SuhaimiDate of birth (1993-04-16) 16 April 1993 (age 30)Place of birth BruneiPosition(s) Defender, Holding midfielderTeam informationCurrent team Kasuka FCNumber 21Senior career*Years Team Apps...

 

City in Tehran province, Iran For the administrative division, see Abali Rural District. For other places with a similar name, see Abalı (disambiguation). City in Tehran, IranAbali Persian: آبعليCityAbaliCoordinates: 35°46′11″N 51°58′00″E / 35.76972°N 51.96667°E / 35.76972; 51.96667[1]CountryIranProvinceTehranCountyDamavandDistrictRudehenPopulation (2016)[2] • Total2,758Time zoneUTC+3:30 (IRST) Abali (Persian: آبعل...

 

Cet article est une ébauche concernant la mode et le vêtement. Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants. Un ensemble de couvertures en « polaire ». Les textiles dits polaires sont des textiles synthétiques isolants constitués de polytéréphtalate d'éthylène (PET) et d'autres fibres synthétiques, caractérisé (comme le velours) par une « pilosité importante cachant la structure t...

Đối với các định nghĩa khác, xem Piemonte (định hướng). Piemonte'—  Vùng của Ý  — Hiệu kỳHuy hiệuPiemonteQuốc giaÝThủ phủ[[Torino]]Diện tích • Tổng cộng25,399 km2 (9,807 mi2)Dân số ({{{pop_date}}}){{{pop_ref}}} • Tổng cộng4,401,266 • Mật độ170/km2 (450/mi2)Múi giờCET (UTC+1) • Mùa hè (DST)CEST (UTC+2)Mã ISO ...

 

Contea di RuskconteaContea di Rusk – VedutaTribunale della contea LocalizzazioneStato Stati Uniti Stato federato Texas AmministrazioneCapoluogoHenderson Data di istituzione1843 TerritorioCoordinatedel capoluogo32°06′36″N 94°45′36″W / 32.11°N 94.76°W32.11; -94.76 (Contea di Rusk)Coordinate: 32°06′36″N 94°45′36″W / 32.11°N 94.76°W32.11; -94.76 (Contea di Rusk) Superficie2 431 km² Abitanti53 330 (2010) Densit...

 

2018 World Weightlifting ChampionshipsMenWomen55 kg45 kg61 kg49 kg67 kg55 kg73 kg59 kg81 kg64 kg89 kg71 kg96 kg76 kg102 kg81 kg109 kg87 kg+109 kg+87 kgvte Main article: 2018 World Weightlifting Championships The men's 102 kilograms competition at the 2018 World Weightlifting Championships was held on 8 November 2018.[1][2] Schedule Date Time Event 8 November 2018 12:00 Group B 19:55 Group A Medalists Event Gold Silver Bronze Snatch  Akbar Djuraev (UZB) 180 kg &...

Pietro Maria Rocca Pietro Maria Rocca (Alcamo, 24 agosto 1847 – Alcamo, 26 agosto 1918) è stato uno storico italiano. Indice 1 Biografia 2 Opere 3 Note 4 Bibliografia 5 Voci correlate 6 Collegamenti esterni Biografia Nacque da una famiglia abbastanza facoltosa di Alcamo; dopo aver finito gli studi presso i Gesuiti, entrò nel seminario vescovile di Mazara del Vallo, ma non avendo inclinazione per la carriera ecclesiastica, abbandonò questo seminario proseguendo gli studi in modo autonomo....

 

В статье не хватает ссылок на источники (см. рекомендации по поиску). Информация должна быть проверяема, иначе она может быть удалена. Вы можете отредактировать статью, добавив ссылки на авторитетные источники в виде сносок. (27 июня 2016) Узбекистанские железные дорогиузб. O�...

 

Кирилицяукр. кирилиця, біл. кірыліца, болг. кирилица, босн. ćirilica, мак. кирилица, рос. кириллица, серб. ћирилицаВидАбеткаМовиНаціональні мови:Слов'янські: Білорусь Болгарія Боснія і Герцеговина Північна Македонія  Росія Сербія Україна ЧорногоріяНе сл�...

Battle of the First Carlist War Battle of AlsasuaPart of the First Carlist WarDate22 April 1834LocationAlsasua (Altsasu), Navarre, Spain42°53′43″N 2°10′08″W / 42.8953°N 2.1689°W / 42.8953; -2.1689Result Carlist victoryBelligerents Carlists supporting Infante Carlos of Spain Liberals (Isabelinos or Cristinos) supportingIsabella II of Spain and her regent mother Maria ChristinaCommanders and leaders Tomás de Zumalacárregui Vicente Genaro de QuesadaCasualtie...

 

Farming of aquatic organisms For the journal, see Aquaculture (journal). Agriculture History Prehistory Neolithic Revolution Agriculture in Mesoamerica Austronesian expansion Ancient history Ancient Egypt Ancient Greece Ancient Rome Post-classical Agriculture in the Middle Ages Arab Agricultural Revolution Columbian exchange Modern history British Agricultural Revolution Green Revolution Organic Monoculture On land Agrivoltaic Animal husbandry cattle pigs poultry sheep Dairy Dryland Extensive...

 

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Murder on Lenox Avenue – news · newspapers · books · scholar · JSTOR (April 2019) (Learn how and when to remove this message) 1941 American filmMurder on Lenox AvenueDirected byArthur DreifussWritten byFrank Wilson (story)Vincent Valentini (writer) andBryna Ive...

Questa voce o sezione sull'argomento musicisti britannici non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Segui i suggerimenti del progetto di riferimento. Charlie BurchillBurchill nel 2015 Nazionalità Regno Unito GenereRockPost-punkNew wavePop rockRock alternativo Periodo di attività musicale1977 – in attività Strumentochita...

 

Capital and largest city of Azerbaijan For other uses, see Baku (disambiguation). Capital city in BIR, AzerbaijanBaku BakıCapital cityShirvanshah's Palace; Old City; Maiden Tower; Palace of Happiness; evening in Baku; Ismailiyya Palace; Heydar Aliyev Center; National Art Museum of Azerbaijan; Azerbaijan Carpet Museum; Azerbaijan State Academic Philharmonic Hall; Azerbaijan State Academic Opera and Ballet Theatre; Nizami Cinema Center; Ateshgah; Church of the Saviour; Heydar Mosque; view over...

 

Úrvalsdeild 1998 Competizione Úrvalsdeild Sport Calcio Edizione 87ª Organizzatore KSI Date dal 18 maggio 1998al 26 settembre 1998 Luogo  Islanda Partecipanti 10 Risultati Vincitore ÍBV(3º titolo) Retrocessioni ÞrótturÍR Statistiche Miglior marcatore Steingrímur Jóhannesson (16 goal) Cronologia della competizione 1997 1999 Manuale La Úrvalsdeild 1998 fu la 87ª edizione della massima serie del campionato di calcio islandese disputata tra il 18 maggio e il 26 sette...

Method of detecting gravitational waves Ground-based interferometric gravitational-wave search refers to the use of extremely large interferometers built on the ground to passively detect (or observe) gravitational wave events from throughout the cosmos.[1] Most recorded gravitational wave observations have been made using this technique; the first detection, revealing the merger of two black holes, was made in 2015 by the LIGO sites. As of 2024[update], major detectors are th...

 

Series of battles during World War II Battle of Hill 400 redirects here. For the battle during the Sino-Vietnamese conflicts of 1979–1991, see Battle of Fakashan. Battle of Hürtgen ForestPart of the Western Front of World War IIA farmhouse in Hürtgen served as shelter for HQ Company, 121st Infantry Regiment, 8th Infantry Division, XIX Corps, 9th US Army. They nicknamed it the Hürtgen Hotel.Date19 September – 16 December 1944[1]Location50°42′31″N 6°21′46″E / &#...