Subversion umožňuje přejmenování a přesun souborů a adresářů. Takže v menu TortoiseSVN existují volby pro smazání a přejmenování.
Použijte
→ k odstranění souborů nebo adresářů z Subversion.Pokud zvolíte „smazáno“. Dokud změnu neodevzdáte, můžete soubor získat zpět pomocí → použitím na nadřazený adresáři.
→ je soubor či adresář okamžitě odstraněn z Vaší pracovní kopie, také je označen v úložišti k odstranění při příštím odevzdání. Nadřazený adresář položky ukazuje překryvPokud chcete vymazat položku z úložiště, ale ponechat si ji místně jako soubor/adresář bez verze, použijte Shift, při klikání pravým tlačítkem myši na položku v panelu se seznamem v průzkumníku (pravý panelu), aby toto rozšířené kontextové menu bylo vidět.
→ . Musíte držet klávesuPokud je položka smazána přes průzkumníka místo pomocí kontextového menu TortoiseSVN, dialogové okno odevzdání tyto položky zobrazí a umožňuje je také odstranit ze správy verzí před odevzdáním. Nicméně pokud aktualizujete Vaši pracovní kopii, Subversion si všimne chybějící položky a nahradí ji nejnovější verzi z úložiště. Pokud potřebujete odstranit soubor spravovaný verzí, vždy použijte
→ , aby Subversion nemusel hádat, co opravdu chcete udělat.Pokud jste smazali soubor nebo adresář a již jste odevzdali operace odstranění do úložiště, pak normální
→ už ho vrátit zpátky nedovede. Ale soubor nebo adresář vůbec není ztracen. Pokud víte, v které revizi soubor nebo adresář byl odstraněn (pokud nevíte, použijte dialogové okno Záznamu), otevřete průzkumníka úložiště a přejděte na tuto revizi. Pak vyberte odstraněný soubor nebo adresář, klikněte na něj pravým tlačítkem myši a zvolte → s jako cíl této operace vyberte cestu k Vaší pracovní kopii.Pokud chcete udělat jednoduché přejmenování souboru nebo adresáře na místě, použijte
→ , zadejte nový název položky a je hotovo.Pokud chcete přesouvat soubory uvnitř Vaší pracovní kopie, možná do jiného podadresáře použijte obslužnou rutinu táhni a pusť:
vyberte soubory nebo adresáře, které chcete přesunout
přetáhněte je pravým tlačítkem myši do nového umístění uvnitř pracovní kopie
pusťte pravé tlačítko myši
v místní nabídce vyberte
→Vzhledem k tomu, že přejmenování a přesunování se provádí jako smazání následováno přidáním, musíte odevzdat nadřazený adresář přejmenovaného/přesunutého souboru tak, aby smazaná část přejmenování/přesunutí se objeví v dialogovém okně odevzdání. Pokud neodevzdáte odstraněnou část přejmenovat/přesunutí, zůstane v úložišti, a když Vaši spolupracovníci budou aktualizovat starý soubor nebude odstraněn. tedy budou mít obě kopie, starou i novou.
Musíte odevzdat přejmenovaný adresář před změnou některých souborů uvnitř adresáře, jinak Vaše pracovní kopie může být velmi neuspořádaná.
Dalším způsobem, jak přesunout nebo zkopírovat soubory je použit Windows příkazy kopírovat/vyjmout. Vyberte soubory, které chcete zkopírovat, klepněte na ně pravým tlačítkem a zvolte
→ z kontextového menu průzkumníka. Pak přejděte do cílového adresáře, klikněte pravým tlačítkem myši a zvolte → . Pro přesunutí souborů, zvolte → místo → .Můžete také použít průzkumníka úložiště pro přesun předmětů po okolí. Přečtěte si „Průzkumník Úložiště“ a dozvíte se více.
Neměli byste používat TortoiseSVN příkazy Přesunout nebo Přejmenovat na adresář, který byl vytvořen pomocí svn:externals
. Tato akce by způsobila, že vnější položky jsou smazány z jejich nadřazeného úložiště. Tím pravděpodobně rozčílíte mnoho dalších lidí. Pokud potřebujete přesunout externí adresář, měli byste použít obyčejný přesun v rozhraní a poté nastavit vlastnost svn:externals
v nadřazených adresářích zdroje a určení.
Pokud úložiště již obsahuje dva soubory se stejným názvem, lišící se pouze velikostí písmen, (např. Test.txt
a test.txt
), nebudete moci aktualizovat nebo získat nadřazený adresář s Windows klientem. Zatímco Subversion podporuje názvy souborů s různou velikostí písmen, systém Windows ne.
Někdy se tak stane, že dva lidé odevzdají, z oddělených pracovních kopií, soubory, které náhodou mají stejný název, ale jinou velikost písmen. Také se může stát, že soubory jsou odevzdány ze systému se souborovým systémem, rozlišující velikost písmen, jako je Linux.
V tomto případě budete muset rozhodnout, který z nich v úložišti chcete zachovat a který smazat (nebo přejmenovat).
There is a server hook script available at: https://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/ that will prevent checkins which result in case conflicts.
Někdy Vaše přátelské IDE přejmenuje pro Vás soubory jako součást cvičení refaktorování a samozřejmě nic Subversion neřekne. Pokusíte-li se odevzdat změny, Subversion uvidí staré jméno souboru jako chybějící a ten nový jako soubor bez verze. Stačilo by jen zaškrtnout nový název souboru, aby byl přidán, ale pak byste ztratili sledování historie, protože Subversion neví, že soubory spolu souvisejí.
Lepší způsob je oznámit Subversion, že tato změna je vlastně přejmenování. To můžete udělat v rámci dialogových oken Odevzdání a Zjistit změny. Stačí jen vybrat starý název (chybějící) i nové jméno (bez verze) a použit → pro spárování souborů jako přejmenování.
Obvykle nastavíte Váš seznam k ignorování tak, že všechny vytvořené soubory jsou v Subversion ignorovány. Ale co když chcete vymazat všechny ignorované položky, protože chcete provést čisté sestavení? Obvykle byste toto nastavili v makefile, ale pokud makefile ladíte, nebo měníte sestavovací systém, je užitečné mít způsob jak zamést podlahu.
TortoiseSVN poskytuje právě takovou možnost použitím Shift při kliknutí pravým tlačítkem na adresář v panel seznamu průzkumníka (pravý panel), aby bylo rozšířené kontextové menu vidět. Toto zobrazí dialogové okno, které vypíše všechny soubory bez verze kdekoli v pracovní kopii. Pak si můžete označit nebo odznačit položky, které mají být smazány.
→ . Musíte držetPři mazání těchto položek je použít koš, takže pokud zde uděláte chybu a smažete soubor, který měl mít verzi, můžete ho stále obnovit.