Niekedy budete chcieť do svojej pracovnej kópie zahrnúť ďalší projekt, možno nejaký kód knižnice. Existujú minimálne 4 spôsoby riešenia tejto situácie.
Nastavte vo svojom projekte vlastnosť priečinka svn:externals
. Táto vlastnosť pozostáva z jedného alebo viacerých riadkov; každý riadok má názov podpriečinka, ktorý chcete použiť ako priečinok overenia spoločného kódu a adresu URL úložiska, ktoré chcete overiť. Úplné informácie nájdete v časti “Externé položky”.
Odovzdajte nový priečinok. Teraz, keď aktualizujete, Subversion stiahne kópiu tohto projektu zo svojho úložiska do vašej pracovnej kópie. Ak je to potrebné, podpriečinka sa vytvoria automaticky. Zakaždým, keď aktualizujete svoju hlavnú pracovnú kópiu, dostanete tiež najnovšiu verziu všetkých externých projektov.
Ak je externý projekt v rovnakom úložisku, všetky zmeny, ktoré v ňom vykonáte, sa zahrnú do zoznamu odovzdania, keď budete potvrdzovať svoj hlavný projekt.
Ak je externý projekt v inom úložisku, všetky zmeny, ktoré vykonáte v externom projekte, sa zobrazia alebo označia pri odovzdaní hlavného projektu, ale tieto externé zmeny musíte vykonať osobitne.
Z troch opísaných metód je to jediná, ktorá nevyžaduje žiadne nastavenie na strane klienta. Po zadaní externých údajov vo vlastnostiach priečinka dostanú všetci klienti pri aktualizácii naplnené priečinky.
Vytvorte vo svojom projekte nový priečinok, ktorý bude obsahovať spoločný kód, ale nepridávajte ho do Subversion.
Vyberte
→ pre nový priečinok a overte doňho kópiu spoločného kódu. Teraz máte vo svojej hlavnej pracovnej kópii vnorenú samostatnú pracovnú kópiu.Tieto dve pracovné kópie sú nezávislé. Keď vykonáte zmeny pre nadradenú pracovnú kópiu, zmeny vo vnorenej sú ignorované. Podobne keď aktualizujete nadradenú pracovnú kópiu, vnorená nie je aktualizovaná.
Ak používate rovnaký spoločný základný kód vo viacerých projektoch a nechcete si ponechať jeho viac pracovných kópií pre každý projekt, ktorý ho používa, môžete si ho jednoducho skontrolovať na samostatnom mieste, ktoré súvisí so všetkými ostatnými projektmi. použi to. Napríklad:
C:\Projects\Proj1 C:\Projects\Proj2 C:\Projects\Proj3 C:\Projects\Common
a odkazovať na spoločný kód pomocou relatívnej cesty, napr. ..\..\Common\DSPcore
.
Ak sú vaše projekty rozptýlené na nesúvisiacich miestach, môžete použiť ich alternatívu, ktorá spočíva v umiestnení spoločného kódu na jedno miesto a nahradení písmena jednotky mapovaním tohto miesta na niečo, čo môžete vo svojich projektoch naprogramovať napevno, napr. Overiť spoločný kód do D:\Documents\Framework
alebo C:\Dokumenty a nastavenia\{login}\Moje dokumenty\framework
potom použite
SUBST X: "D:\Documents\framework"
na vytvorenie mapovania jednotky použitého vo vašom zdrojovom kóde. Váš kód potom môže používať absolútne polohy.
#include "X:\superio\superio.h"
Táto metóda bude fungovať iba v prostredí všetkých počítačov a budete musieť zdokumentovať požadované priradenia jednotiek, aby váš tím vedel, kde sú tieto záhadné súbory. Táto metóda je striktne používaná v uzavretých vývojových prostrediach a neodporúča sa na všeobecné použitie.
Možno najjednoduchším spôsobom je jednoducho pridať projekt do podpriečinka do vlastnej pracovnej kópie projektu. Má to však nevýhodu, že musíte tento externý projekt aktualizovať a inovovať ručne.
Na pomoc s aktualizáciou poskytuje TortoiseSVN príkaz v kontextovej ponuke prieskumníka kliknutím pravým tlačidlom myši. Jednoducho pretiahnite priečinok, v ktorom ste rozbalili novú verziu externej knižnice, do priečinka v pracovnej kópii a potom vyberte
→ . To potom skopíruje nové súbory do cieľového priečinka a zároveň automaticky pridá nové súbory a odstráni súbory, ktoré už nie sú v novej verzii.