Manuals

Odstránenie, presun a premenovanie

Subversion umožňuje premenovanie a presun súborov a priečinkov. V podponuke TortoiseSVN teda existujú položky ponuky na odstránenie a premenovanie.

Obrázok 4.34. Kontextová ponuka prieskumníka pre verziové súbory

Kontextová ponuka prieskumníka pre verziové súbory


Vymazanie súborov a priečinkov

Použite TortoiseSVNVymazať na odstránenie súborov, alebo priečinkov zo Subversion.

Keď použijete TortoiseSVNVymazať na súbor alebo priečinok, okamžite sa odstráni z pracovnej kópie a pri ďalšom odovzdaní sa označí na odstránenie v úložisku. Nadradený priečinok položky zobrazí ikonu prekrytia upravené. Až do vykonania zmeny môžete súbor získať späť použitím ponuky TortoiseSVNVrátiť v nadradenom priečinku.

Ak chcete vymazať položku z úložiska, ale ponechať ju lokálne ako bezverziový súbor/priečinok, použite Rozšírenú kontextovú ponukuOdstrániť (zachovať lokálne). Musíte pridržať Shift pri kliknutí pravým tlačidlom myši na položku na paneli zoznamu prieskumníka (pravý panel), aby ste to videli v rozšírenej kontextovej ponuke.

Ak je položka vymazaná prieskumníkom namiesto použitia kontextovej ponuky TortoiseSVN, dialógové okno odovzdania zobrazí tieto položky ako chýbajúce a umožní vám ich pred odovzdaním tiež odstrániť zo správy verzie. Ak však aktualizujete svoju pracovnú kópiu, Subversion zistí chýbajúcu položku a nahradí ju najnovšou verziou z úložiska. Ak potrebujete vymazať súbor pod správou verzie, použite vždy ponuku TortoiseSVNVymazať, aby Subversion nemusel hádať, čo vlastne chcete robiť.

Získanie vymazaného súboru alebo priečinka späť

Ak ste vymazali súbor alebo priečinok a už ste odovzdali túto operáciu vymazania do úložiska, je normálne, že ponuka TortoiseSVNVrátiť to už nemôže vrátiť späť. Ale súbor alebo priečinok sa vôbec nestratí. Ak poznáte revíziu, ktorá bola z priečinka alebo súboru vymazaná (ak nie, použite dialógové okno záznamu), otvorte prehliadač úložiska a nastavte danú revíziu. Potom vyberte súbor alebo priečinok, ktorý ste vymazali, kliknite naňho pravým tlačidlom myši a vyberte kontextovú ponukuKopírovať do... Ako cieľ tejto operácie kopírovania vyberte cestu k svojej pracovnej kópii.

Presun súborov a priečinkov

Ak chcete jednoducho premenovať súbor alebo priečinok na mieste, použite kontextovú ponukuPremenovať... Zadajte nový názov položky a máte hotovo.

Ak chcete presunúť súbory vnútri vašej pracovnej kópie, napríklad do iného podpriečinka, použite ťahaj a pusť pri stlačí pravého tlačidla myši:

  1. vyberte súbory alebo priečinky, ktoré chcete presunúť

  2. ťahajte so stlačeným pravým tlačidlom na nové miesto vo vnútri pracovnej kópie

  3. uvoľnite pravé tlačidlo myši

  4. vo vyskakovacej ponuke zvoľte kontextovú ponukuSVN Presunúť verziové súbory sem

Odovzdať nadradený priečinok

Pretože sa premenovania a presuny vykonávajú ako vymazanie, po ktorom nasleduje pridanie, musíte odovzdať nadradený priečinok premenovaného/presunutého súboru, aby sa odstránená časť premenovania/presunu zobrazila v dialógovom okne odovzdania. Ak neodovzdáte odstránenú časť premenovania/presunu, zostane v úložisku a po aktualizácii vašich spolupracovníkov sa starý súbor neodstráni. t. j. budete mať oboje staré a nové kópie.

Musíte pred zmenou niektorého zo súborov v priečinku odovzdať premenovanie priečinka, inak by sa mohla vaša pracovná kópia skutočne pokaziť.

Ďalším spôsobom presunutia alebo kopírovania súborov je použitie príkazov Windows Kopírovať/Prilepiť. Vyberte súbory, ktoré chcete kopírovať, kliknite na nich pravým tlačidlom myši a vyberte kontexovú ponukuKopírovať z kontextovej ponuky prieskumníka. Potom prejdite do cieľového priečinka, kliknite naňho pravým tlačidlom myši a vyberte ponuku TortoiseSVNPrilepiť. Pre presun súborov vyberte kontextovú ponukuVystrihnúť namiesto kontextovej ponukyKopírovať.

Na presun položiek môžete tiež použiť prehľadávač úložiska. Pre získanie ďalších informácií si prečítajte časť “Prehliadač úložiska”.

Nepremiestňovať externé súbory SVN

Nemali by ste používať príkazy TortoiseSVN Presunúť alebo Premenovať pre priečinok, ktorý bol vytvorený použitím svn:externals. Táto akcia by spôsobila odstránenie externej položky z nadradeného úložiska, čo by pravdepodobne rozladilo mnoho ďalších ľudí. Ak potrebujete presunúť externý priečinok, mali by ste použiť bežný presun príkazom prostredia, potom upravte vlastnosti svn:externals zdrojového a cieľového nadradeného priečinka.

Prejednanie konfliktov veľkosti písma názvov súborov

Ak archív už obsahuje dva súbory s rovnakým názvom, ktoré sa však líšia iba v prípade (napr. TEST.TXT a test.txt ), nebudete môcť aktualizovať ani overiť rodičovský priečinok klientom Windows. Zatiaľ čo Subversion podporuje názvy súborov, pri ktorých sa rozlišujú veľké a malé písmená, Windows nie.

To sa niekedy stane, keď dvaja ľudia odovzdajú zo samostatných pracovných kópií súbory, ktoré majú rovnaký názov, ale s rozdielnou veľkosťou písma. Môže sa to stať aj vtedy, keď sa súbory odovzdávajú zo systému so súborovým systémom, v ktorom sa rozlišujú veľké a malé písmená, napríklad Linux.

V takom prípade sa musíte rozhodnúť, ktorý z nich si chcete ponechať a vymazať (alebo premenovať) ten druhý z úložiska.

Zabránenie vzniku dvoch súborov s rovnakým názvom

K dispozícii je skript háku servera na adrese: https://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/, ktorý preventívne overí následok konfliktov veľkosti písma.

Oprava premenovania súborov

Vaše priateľské IDE niekedy za vás premenuje súbory v rámci úkonu refaktoringu a samozrejme to Subversion nepovie. Ak sa pokúsite odovzdať zmeny, Subversion vidí starý názov súboru ako chýbajúci a nový ako bezverziový súbor. Môžete jednoducho skontrolovať nový názov súboru, aby ste ho mohli pridať, ale stratili by ste sledovanie histórie, pretože Subversion nevie, že súbory súvisia.

Lepším spôsobom je upozorniť Subversion, že táto zmena je vlastne premenovaním a môžete to urobiť v rámci dialógov Odovzdať a Skontrolovať úpravy. Jednoducho vyberte starý názov (chýbajúci) aj nový názov (bezverziový) a použite kontextovú ponukuOpraviť presun spárujete tieto dva súbory ako premenované.

Vymazávanie bezverziových súborov

Zvyčajne nastavíte svoj zoznam ignorovaných položiek tak, aby boli všetky vygenerované súbory v Subversion ignorované. Čo však v prípade, že chcete vyčistiť všetky tieto ignorované položky, aby ste dosiahli čisté zostavu? Spravidla by ste to nastavili vo svojom makefile, ale ak ladíte makefile alebo meníte systém zostavenia, je užitočné mať k dispozícii spôsob vyčistenia paluby.

TortoiseSVN poskytuje práve takúto možnosť Rozšírená kontextová ponukaOdstrániť bezverziové položky. Musíte pridržať Shift pri kliknutí pravým tlačidlom myši na priečinok v paneli zoznamu prieskumníka (pravý panel), aby ste to videli v rozšírenej kontextovej ponuke. Vytvorí sa dialógové okno so zoznamom všetkých bezverziových súborov kdekoľvek v pracovnej kópii. Potom môžete vybrať alebo zrušiť výber položiek, ktoré sa majú odstrániť.

Na odstránenie týchto položiek sa použije kôš, takže ak tu urobíte chybu a odstránite súbor, ktorý by mal byť verziový, môžete ho stále obnoviť.

TortoiseSVN homepage