Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

KNZSOFT Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ПО, ΠΊΠΎΠ½ΡΡƒΠ»ΡŒΡ‚Π°Ρ†ΠΈΠΈ, ΡƒΡ‡Π΅Π±Π½Ρ‹Π΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹

КнязСв АлСксСй АлСксандрович. НСзависимый программист ΠΈ ΠΊΠΎΠ½ΡΡƒΠ»ΡŒΡ‚Π°Π½Ρ‚.

SVN ΠΈ Git для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° использования

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» страницы находится Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅!

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π”Π°Π½Π½ΠΎΠ΅ руководство написано для практичСского ознакомлСния с популярной сСгодня систСмой контроля вСрсий Subversion, Ρ‚Π°ΠΊΠΆΠ΅ извСстной ΠΊΠ°ΠΊ SVN. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Linux смогут ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ всС описанныС Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ экспСримСнты Π½Π° своём ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ внСсти Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΏΡ€Π°Π²ΠΊΠΈ.

Одной ΠΈΠ· ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ‡Π΅Ρ€Ρ‚ Π΄Π°Π½Π½ΠΎΠ³ΠΎ руководства являСтся ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ сравнСний ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ SVN ΠΈ Git. Git Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ нСсколько ΠΏΠΎΠ·ΠΆΠ΅ SVN, ΠΈ Π±Ρ‹Π» ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° ΠΎΡ‡Π΅Π½ΡŒ спСцифичСский ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ β€” Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ядра Linux, которая вСдСтся ΠΎΡ‡Π΅Π½ΡŒ большим ΠΊΡ€ΡƒΠ³ΠΎΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² разбросанных ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ. АрхитСктура ΠΈ рСализация Git оказалась ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ для вСдСния Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ сСгодня, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, ΠΈΠΌΠ΅Π½Π½ΠΎ SVN ΠΈ Git ΡΠ²Π»ΡΡŽΡ‚ΡΡ самыми популярными систСмами контроля вСрсий. SVN ΠΈ Git сильно ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΠΎ своим Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ идСям, ΠΈ Π²Ρ‹Π±ΠΎΡ€ ΠΌΠ΅ΠΆΠ΄Ρƒ использованиСм SVN ΠΈΠ»ΠΈ Git Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΏΠΈΡ€Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ этих Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ. Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… Π΄Π°Π½Π½ΠΎΠ³ΠΎ руководства, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ SVN ΠΈ Git, Π½ΠΎ ΠΈ Π°ΠΊΡ†Π΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… особСнностях этих систСм, Ρ‡Ρ‚ΠΎ, ΠΊΡ€ΠΎΠΌΠ΅ ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ, Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡƒΡΠΈΠ»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ изучСния β€” знакомство с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сдСлано ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ, упростит Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°.

ПослСдний Ρ€Π°Π·Π΄Π΅Π» посвящён ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ возмоТностям систСмы Git ΠΏΠΎ трансформациям ΠΌΠ΅ΠΆΠ΄Ρƒ своим Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ ΠΈ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ SVN. Многим Π±ΡƒΠ΄Π΅Ρ‚ интСрСсно Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ с Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ SVN ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ срСдствами Git. Вакая синхронизация Ρ€Π°Π·Π½ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², доступная благодаря возмоТностям Git, ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ прСимущСства ΠΈ нСдостатки Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ².

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ Π”Π°Π½Π½ΠΎΠ΅ руководство написано Π² контСкстС использования ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Linux. Для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Π½ΠΎΡΠΈΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹.

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ‡Π΅ΡΠΊΠ°Ρ справка

Subversion

Subversion β€” систСма управлСния вСрсиями Π² свободной Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ. Π˜Π·Π²Π΅ΡΡ‚Π½Π° ΠΏΠΎΠ΄ сокращСнным ΠΈΠΌΠ΅Π½Π΅ΠΌ SVN. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Subversion Π½Π°Ρ‡Π°Π»Π°ΡΡŒ Π² 2000 Π³ΠΎΠ΄Ρƒ ΠΏΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π΅ ΠΈ финансовой ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ CollabNet Inc.

Основной Ρ†Π΅Π»ΡŒΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Subversion считаСтся Π·Π°ΠΌΠ΅Π½Π° ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ, Π½Π° Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚ систСмы контроля вСрсий CVS (Concurrent Versions System). Новый ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ всю Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ CVS ΠΈ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ ряда Π΅Π³ΠΎ нСдостатков.

ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ выпуск Subversion β€” 2004 Π³ΠΎΠ΄.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Git Π½Π°Ρ‡Π°Π»Π°ΡΡŒ Π² 2005 Π³ΠΎΠ΄Ρƒ, ΠΏΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Linux β€” Линуса Π’ΠΎΡ€Π²Π°Π»ΡŒΠ΄ΡΠ°.

Двумя ваТнСйшими трСбованиями ΠΊ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ систСмС контроля вСрсий Π±Ρ‹Π»ΠΈ трСбования эффСктивности (ΠΏΠΎ скорости ΠΈ ΠΎΠ±ΡŠΠ΅ΠΌΡƒ) для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π² ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ строк ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ (тысячи ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… Π²Π΅Ρ‚ΠΎΠΊ). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Git ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ориСнтировался Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΡƒΡŽ спСцифику Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

ВСхничСскиС вопросы устройства

Π”Π²Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для раздСлСния Ρ„Π°ΠΉΠ»ΠΎΠ²

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π½Π° мноТСство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Π΄Π²ΡƒΡ… извСстных схСм раздСлСния.

ОбС систСмы, Subversion ΠΈ Git, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π²Ρ‚ΠΎΡ€ΡƒΡŽ схСму раздСлСния Π΄Π°Π½Π½Ρ‹Ρ… (Copy-Modify-Merge), Π½ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚ это Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ.

ЀизичСскоС прСдставлСниС рСпозитория

Subversion

SVN относится ΠΊ Ρ‚ΠΈΠΏΡƒ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… систСм, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΈ ΠΎΡ‚ Git ΠΈ Mercurial, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ прСдставитСлями класса распрСдСлСнных систСм. Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ схСмы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π΄Π°Π½Π½Ρ‹Ρ….

Π Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ систСмы Subversion ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΠΈΡ€Π°Ρ‚ΡŒΡΡ Π½Π° Π΄Π²Π΅ Ρ€Π°Π·Π½Ρ‹Π΅ физичСскиС систСмы хранСния Π΄Π°Π½Π½Ρ‹Ρ… рСпозитория. Π˜ΡΡ‚ΠΎΡ€ΠΈΡ‡Π΅ΡΠΊΠΈ, ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ рСпозитория Π±Ρ‹Π» основан Π½Π° использовании Π‘Π£Π‘Π” Berkeley DB. ПозТС, Π±Ρ‹Π»Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° рСализация Π½Π° основС ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π΄Π°Π½Π½Ρ‹Ρ… (FSFS), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ собствСнными ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ. Начиная с Ρ€Π΅Π»ΠΈΠ·Π° 1.2 для Π½ΠΎΠ²Ρ‹Ρ… Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ FSFS.

Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π½Π° основС Π‘Π£Π‘Π” Berkley DB ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΊΠ°ΠΏΡ€ΠΈΠ·Π½ΠΎΠΉ. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π΅Π΅ настройка Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ большСго внимания администратора. Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Berkley DB Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Π° ΠΊ Π²Ρ‹Π±ΠΎΡ€Ρƒ Π½ΠΈΠ·Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы β€” ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ ΠΎ прСимущСствах ΠΈ нСдостатках Ρ€Π°Π·Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ прСдставлСния рСпозитория Π½Π°Π΄ΠΎ ΡƒΡ‚ΠΎΡ‡Π½ΡΡ‚ΡŒ Π² руководствах ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ вСрсиям, ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ лишь Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π° основании Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΊΡ‚ΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ, Π² соврСмСнных рСализациях, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ прСимущСства Π² Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ хранСния Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ различия Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… опСрациях с Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅ΠΌ.

ЛогичСскоС прСдставлСниС рСпозитория

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ SVN Π½Π΅ дСлится Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ рСпозитория ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ пространство рСпозитория Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ условно считая ΠΈΡ…
ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ. ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго это сказываСтся Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ фиксации любой части рСпозитория (условного ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°) Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ Π½ΠΎΠΌΠ΅Ρ€ Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ ΠΎΠ±Ρ‰Π΅Π³ΠΎ рСпозитория.

SVN vs Git. Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ наблюдаСм сущСствСнноС Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ Π² использовании, ΠΈ, особСнно,
администрировании систСм SVN ΠΈ Git. Π’ Git, ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² любой Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ
ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ локального рСпозитория, Ρ‡Π΅Π³ΠΎ, часто, для ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ
Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π±Ρ‹Π²Π°Π΅Ρ‚ достаточно. Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΏΡ€ΠΈ Π΅Π³ΠΎ нСобходимости,
Ρ‚Π°ΠΊ ΠΆΠ΅ организуСтся ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ, позволяя для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ свою ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ ΠΏΡ€Π°Π² доступа. Если Π±Ρ‹Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌ, Ρ‚ΠΎ Git Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ
сосрСдоточСн ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° срСдствах управлСния вСрсиями ΠΈ, ΠΏΡ€ΠΈ использовании
Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², для Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ раздСлСния доступа ΠΊ ΠΊΠΎΠ΄Ρƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
мноТСства ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±Π΅Ρ€Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ срСдства
администрирования Git. CΡ€Π΅Π΄ΠΈ послСдних, извСстными ΡΠ²Π»ΡΡŽΡ‚ΡΡ gitolite ΠΈ gitosys.

Π Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ понятия стСрТнСвых Ρ€Π΅Π²ΠΈΠ·ΠΈΠΉ (peg revision) ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ€Π΅Π²ΠΈΠ·ΠΈΠΉ (operative revision). БтСрТнСвая рСвизия прСдставляСт собой Π½ΠΎΠΌΠ΅Ρ€ Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для уточнСния Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… историй для ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ€Π΅Π²ΠΈΠ·ΠΈΠΉ ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄. Π’.Π΅. Команда ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π΄Π°Π½Π° ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ€Π΅Π²ΠΈΠ·ΠΈΠΉ Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… историй связанных с опСрациями копирования, пСрСмСщСния ΠΈ уничтоТСния Ρ„Π°ΠΉΠ»ΠΎΠ². Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡƒΡŽ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΡΡ‚Π΅Ρ€ΠΆΠ½Π΅Π²ΡƒΡŽ Ρ€Π΅Π²ΠΈΠ·ΠΈΡŽ ΠΏΠΎ ΠΏΡ€Π°Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ€Π΅Π²ΠΈΠ·ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ история Ρ„Π°ΠΉΠ»Π° ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ отслСТиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ. ΠŸΡ€ΠΈ
отслСТивании истории Π² прямом Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с Ρ€Π°Π·Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ΠΌ, созданным ΠΏΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π°. Π Π°Π±ΠΎΡ‚Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° выполняСтся Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ рСпозитория, которая создаСтся ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ снимка всСго рСпозитория SVN ΠΈΠ»ΠΈ Π΅Π³ΠΎ части (Ρ‡Π΅Ρ€Π΅Π· ΡƒΡ‚ΠΎΡ‡Π½Π΅Π½ΠΈΠ΅ Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ) с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ svn checkout (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π° послСдняя рСвизия). Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Ρ…ΠΎΡ‡Π΅Ρ‚ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Ρ‚ΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ svn commit. ΠŸΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ фиксации ΠΊΠΎΠ΄Π° создаСтся новая рСвизия с большим Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ.

Основная ΡΡƒΡ‚ΡŒ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ рСпозитория Git Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ…Ρ€Π°Π½ΠΈΡ‚ Ρ„Π°ΠΉΠ»Ρ‹ Π² Π²ΠΈΠ΄Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ², Π° Π² качСствС ΠΈΠΌΠ΅Π½ΠΈ Ρ„Π°ΠΉΠ»Π° Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…ΡΡˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ SHA1, вычислСнной ΠΏΠΎ содСрТимому Ρ„Π°ΠΉΠ»Π°.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ хранятся ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·.

Одной ΠΈΠ· особСнностСй Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ хранСния являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² Git Π½Π΅ хранятся Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΊΠ°ΠΊ Ρ‚Π°ΠΊΠΎΠ²Ρ‹Π΅, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π²ΠΈΠ΄Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… ΠΏΡƒΡ‚Π΅ΠΉ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΡƒΡΡ‚ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ нСльзя ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Git.

ЛогичСскоС прСдставлСниС рСпозитория

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ рСпозитория Git Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… Ρ‚ΠΈΠΏΠΎΠ² β€” blob, tree, commit ΠΈ tag.

ИспользованиС систСм контроля вСрсий

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ справочной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

Subversion (SVN)

Бправочная информация ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ svn ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π° ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊ самой ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ svn Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ svn help. ВвСдя эту ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π² консоли, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π½Ρ‹ΠΉ список всСх ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ вСрсиСй ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ svn. Для получСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π½Π°Π΄ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Π΅ послС help. НапримСр:

svn help checkout
svn help commit
svn help mkdir

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ рСпозитория

Subversion (SVN)

ΠŸΡ€ΠΎΠ΄ΡƒΠΌΠ°Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΈ Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ имя для Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ рСпозитория SVN. ΠŸΡ€ΠΈ этом ΠΏΠΎΠ΄ΡƒΠΌΠ°ΠΉΡ‚Π΅ ΠΎ ΠΏΡ€Π°Π²Π°Ρ… доступа, Ссли Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ раздСляСмый. Для простоты я
сдСлаю Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π² своСм домашнСм ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /home/knz с ΠΈΠΌΠ΅Π½Π΅ΠΌ 0-svn-repository. Имя Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅Π΅ΡΡ с нуля прСдоставит Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ для Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ для
ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² сортировок ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ списка Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ такая дирСктория Π½Π΅ затСряСтся Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ домашнСго ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°.

ΠΠ°Ρ…ΠΎΠ΄ΡΡΡŒ Π² домашнСй Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

svnadmin create 0-svn-repository

Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ создан. ΠŸΡƒΡΡ‚ΠΎΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Π½ΠΎΠΌΠ΅Ρ€ Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π² Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ для управлСния. Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ такая.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚

Для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ коммСнтария Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

SVN β€” ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ руководство

БистСма контроля вСрсий (VCS) β€” это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ вмСстС ΠΈ вСсти ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Ρ†Π΅Π»ΠΈ систСмы контроля вСрсий.

VCS дСлится Π½Π° Π΄Π²Π΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ.

ВСрминология контроля вСрсий

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ с обсуТдСния Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² этом руководствС.

Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ: Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ являСтся сСрдцСм любой систСмы контроля вСрсий. Π­Ρ‚ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ΅ мСсто, Π³Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ хранят всю свою Ρ€Π°Π±ΠΎΡ‚Ρƒ. Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ„Π°ΠΉΠ»Ρ‹, Π½ΠΎ ΠΈ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ. Доступ ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· ΡΠ΅Ρ‚ΡŒ, выступая Π² Ρ€ΠΎΠ»ΠΈ сСрвСра ΠΈ инструмСнта контроля вСрсий, Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰Π΅Π³ΠΎ Π² Ρ€ΠΎΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Ρƒ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ / ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ свои измСнСния Π² / ΠΈΠ· Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. Бохраняя измСнСния, ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π΄Π΅Π»Π°Π΅Ρ‚ эти измСнСния доступными для Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй, Π° ΠΏΡƒΡ‚Π΅ΠΌ извлСчСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ воспринимаСт измСнСния Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию.

ΠœΠ°Π³ΠΈΡΡ‚Ρ€Π°Π»ΡŒ: ΠœΠ°Π³ΠΈΡΡ‚Ρ€Π°Π»ΡŒ β€” это ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ происходит вся основная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ провСряСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.

Π’Π΅Π³ΠΈ : ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Ρ‚Π΅Π³ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Ρ… снимков ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π Π°Π±ΠΎΡ‚Π° с Ρ‚Π΅Π³Π°ΠΌΠΈ позволяСт Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ вСрсии Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

НапримСр, LAST_STABLE_CODE_BEFORE_EMAIL_SUPPORT Π±ΠΎΠ»Π΅Π΅ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌΡΡ, Ρ‡Π΅ΠΌ

UUID рСпозитория: 7ceef8cb-3799-40dd-a067-c216ec2e5247 ΠΈ

Π’Π΅Ρ‚Π²ΠΈ: ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ вСтвлСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ развития. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠ» Π² Π΄Π²ΡƒΡ… Ρ€Π°Π·Π½Ρ‹Ρ… направлСниях. НапримСр, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ выпускаСтС Π²Π΅Ρ€ΡΠΈΡŽ 5.0, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Ρ…ΠΎΡ‚Π΅Ρ‚ΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ 6.0 ΠΌΠΎΠ³Π»Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»Π΅Π½Π° ΠΎΡ‚ исправлСний ошибок 5.0.

Рабочая копия: Рабочая копия β€” это снимок Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ являСтся ΠΎΠ±Ρ‰ΠΈΠΌ для всСх ΠΊΠΎΠΌΠ°Π½Π΄, Π½ΠΎ люди Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ Π΅Π³ΠΎ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ. ВмСсто этого ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ провСряСт Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию. Рабочая копия β€” это Π»ΠΈΡ‡Π½ΠΎΠ΅ Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ мСсто, Π³Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ, ΠΎΡΡ‚Π°Π²Π°ΡΡΡŒ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ ΠΎΡ‚ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ части ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Ѐиксация ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Ѐиксация β€” это процСсс сохранСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ с частного Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ мСста Π½Π° Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ сСрвСр. ПослС фиксации измСнСния становятся доступными для всСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ эти измСнСния, ΠΎΠ±Π½ΠΎΠ²ΠΈΠ² свою Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию. Ѐиксация β€” это атомарная опСрация. Π›ΠΈΠ±ΠΎ вСсь ΠΊΠΎΠΌΠΌΠΈΡ‚ ΡƒΡΠΏΠ΅ΡˆΠ΅Π½, Π»ΠΈΠ±ΠΎ ΠΎΡ‚ΠΊΠ°Ρ‚Π°Π½. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ видят Π½Π°ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρƒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚.

Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ: Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ являСтся сСрдцСм любой систСмы контроля вСрсий. Π­Ρ‚ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ΅ мСсто, Π³Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ хранят всю свою Ρ€Π°Π±ΠΎΡ‚Ρƒ. Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ„Π°ΠΉΠ»Ρ‹, Π½ΠΎ ΠΈ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ. Доступ ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· ΡΠ΅Ρ‚ΡŒ, выступая Π² Ρ€ΠΎΠ»ΠΈ сСрвСра ΠΈ инструмСнта контроля вСрсий, Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰Π΅Π³ΠΎ Π² Ρ€ΠΎΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Ρƒ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ / ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ свои измСнСния Π² / ΠΈΠ· Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. Бохраняя измСнСния, ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π΄Π΅Π»Π°Π΅Ρ‚ эти измСнСния доступными для Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй, Π° ΠΏΡƒΡ‚Π΅ΠΌ извлСчСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ воспринимаСт измСнСния Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию.

ΠœΠ°Π³ΠΈΡΡ‚Ρ€Π°Π»ΡŒ: ΠœΠ°Π³ΠΈΡΡ‚Ρ€Π°Π»ΡŒ β€” это ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ происходит вся основная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ провСряСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.

Π’Π΅Π³ΠΈ : ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Ρ‚Π΅Π³ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Ρ… снимков ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π Π°Π±ΠΎΡ‚Π° с Ρ‚Π΅Π³Π°ΠΌΠΈ позволяСт Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ вСрсии Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

НапримСр, LAST_STABLE_CODE_BEFORE_EMAIL_SUPPORT Π±ΠΎΠ»Π΅Π΅ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌΡΡ, Ρ‡Π΅ΠΌ

UUID рСпозитория: 7ceef8cb-3799-40dd-a067-c216ec2e5247 ΠΈ

Π’Π΅Ρ‚Π²ΠΈ: ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ вСтвлСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ развития. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠ» Π² Π΄Π²ΡƒΡ… Ρ€Π°Π·Π½Ρ‹Ρ… направлСниях. НапримСр, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ выпускаСтС Π²Π΅Ρ€ΡΠΈΡŽ 5.0, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Ρ…ΠΎΡ‚Π΅Ρ‚ΡŒ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ 6.0 ΠΌΠΎΠ³Π»Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»Π΅Π½Π° ΠΎΡ‚ исправлСний ошибок 5.0.

Рабочая копия: Рабочая копия β€” это снимок Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ являСтся ΠΎΠ±Ρ‰ΠΈΠΌ для всСх ΠΊΠΎΠΌΠ°Π½Π΄, Π½ΠΎ люди Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ Π΅Π³ΠΎ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ. ВмСсто этого ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ провСряСт Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию. Рабочая копия β€” это Π»ΠΈΡ‡Π½ΠΎΠ΅ Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ мСсто, Π³Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ, ΠΎΡΡ‚Π°Π²Π°ΡΡΡŒ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ ΠΎΡ‚ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ части ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Ѐиксация ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Ѐиксация β€” это процСсс сохранСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ с частного Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ мСста Π½Π° Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ сСрвСр. ПослС фиксации измСнСния становятся доступными для всСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ эти измСнСния, ΠΎΠ±Π½ΠΎΠ²ΠΈΠ² свою Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию. Ѐиксация β€” это атомарная опСрация. Π›ΠΈΠ±ΠΎ вСсь ΠΊΠΎΠΌΠΌΠΈΡ‚ ΡƒΡΠΏΠ΅ΡˆΠ΅Π½, Π»ΠΈΠ±ΠΎ ΠΎΡ‚ΠΊΠ°Ρ‚Π°Π½. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ видят Π½Π°ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρƒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠΈΡ‚.

Настройка срСды SVN

Установка SVN

Subversion β€” это популярный инструмСнт контроля вСрсий с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ. Π­Ρ‚ΠΎ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ доступно бСсплатно Ρ‡Π΅Ρ€Π΅Π· Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚. Он поставляСтся ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ с Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ дистрибутивов GNU / Linux, поэтому ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΆΠ΅ установлСн Π² вашСй систСмС. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, установлСн ΠΎΠ½ ΠΈΠ»ΠΈ Π½Π΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

Если ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Subversion Π½Π΅ установлСн, ΠΊΠΎΠΌΠ°Π½Π΄Π° сообщит ΠΎΠ± ошибкС, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π° вСрсия установлСнного ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.

Настройка Apache

ΠœΡ‹ Π²ΠΈΠ΄Π΅Π»ΠΈ, ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Subversion Π² GNU / Linux. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ доступ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ.

ΠŸΠ°ΠΊΠ΅Ρ‚ mod_dav_svn позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Ρƒ ΠΏΠΎ HTTP, Ρ‡Π΅Ρ€Π΅Π· сСрвСр Apache httpd, Π° ΠΏΠ°ΠΊΠ΅Ρ‚ subversion устанавливаСт инструмСнт svnadmin.

Настройка ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π”ΠΆΠ΅Ρ€Ρ€ΠΈ

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Subversion для хранСния всСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ (см. /Etc/httpd/conf.d/subversion.conf ).

Настройка рСпозитория

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π³Ρ€ΡƒΠΏΠΏΡƒ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π»ΠΈ SELinux ΠΈΠ»ΠΈ Π½Π΅Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ инструмСнта состояния SELinux.

Для нашСго сСрвСра SELinux Π²ΠΊΠ»ΡŽΡ‡Π΅Π½, поэтому ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ контСкст бСзопасности SELinux.

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Ρ„ΠΈΠΊΡΠ°Ρ†ΠΈΡŽ ΠΏΠΎ HTTP, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

ΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚Π΅ сСрвСр Apache, ΠΈ ΠΌΡ‹ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈ с настройкой сСрвСра Apache.

Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ, Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Subversion Π΅ΡΡ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ стволов, Ρ‚Π΅Π³ΠΎΠ² ΠΈ Π²Π΅Ρ‚ΠΎΠΊ нСпосрСдствСнно Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

ΠœΠ°Π³ΠΈΡΡ‚Ρ€Π°Π»ΡŒ β€” это ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ происходит вся основная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ провСряСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.

ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ Ρ‚Π΅Π³ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Ρ… снимков ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠŸΡ€ΠΈ создании производствСнного выпуска ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΌΠ΅Ρ‡Π°Π΅Ρ‚ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² выпуск.

ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ Π²Π΅Ρ‚ΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ направлСниями развития.

Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим структуру ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² стволов, Ρ‚Π΅Π³ΠΎΠ² ΠΈ Π²Π΅Ρ‚Π²Π΅ΠΉ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ ΠΈΠ· / tmp / svn-template Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

Π–ΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» SVN

Π–ΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» систСмы контроля вСрсий обсуТдаСтся Π² этой Π³Π»Π°Π²Π΅. Π’ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π³Π»Π°Π²Π°Ρ… ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Subversion для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ:

Π₯Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ являСтся Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ мСстом, Π³Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ хранят всю свою Ρ€Π°Π±ΠΎΡ‚Ρƒ. Π₯Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ„Π°ΠΉΠ»Ρ‹, Π½ΠΎ ΠΈ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, внСсСнных Π² Ρ„Π°ΠΉΠ»Ρ‹.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ β€˜create’ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв эта опСрация выполняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·. Когда Π²Ρ‹ создаСтС Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ваша VCS Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ скаТСтС Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ для Π΅Π³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π³Π΄Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π±Ρ‹Π» создан, ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠ΅ имя Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ присвоСно Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ, Π²Ρ‹ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒΡΡ

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ Β«ΠžΡ„ΠΎΡ€ΠΌΠΈΡ‚ΡŒ Π·Π°ΠΊΠ°Π·Β» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ ΠΈΠ· Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. Рабочая копия β€” это Π»ΠΈΡ‡Π½ΠΎΠ΅ Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ мСсто, Π³Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ вносят свои измСнСния, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ эти измСнСния Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅.

ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ

Как слСдуСт ΠΈΠ· названия, опСрация обновлСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для обновлСния Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. Π­Ρ‚Π° опСрация синхронизируСт Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию с Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ являСтся ΠΎΠ±Ρ‰ΠΈΠΌ для всСх ΠΊΠΎΠΌΠ°Π½Π΄, Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои измСнСния, ΠΈ ваша рабочая копия становится ΡΡ‚Π°Ρ€ΡˆΠ΅.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π’ΠΎΠΌ ΠΈ Π”ΠΆΠ΅Ρ€Ρ€ΠΈ β€” Π΄Π²Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ. Оба ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ послСднюю Π²Π΅Ρ€ΡΠΈΡŽ ΠΈΠ· рСпозитория ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈΡ… Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ ΠΊΠΎΠΏΠΈΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ синхронизированы с Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ. Π”ΠΆΠ΅Ρ€Ρ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΎΡ‡Π΅Π½ΡŒ эффСктивно ΠΈ вносит свои измСнСния Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅.

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ измСнСния

ПослС оформлСния Π·Π°ΠΊΠ°Π·Π° ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ для внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ это самая распространСнная опСрация. МоТно Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Π°ΠΉΠ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ / ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ содСрТимоС ΠΈΠ· Ρ„Π°ΠΉΠ»Π°.

МоТно Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ / ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ. Но сразу ΠΆΠ΅ эти Ρ„Π°ΠΉΠ»Ρ‹ / ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Π½Π΅ становятся Ρ‡Π°ΡΡ‚ΡŒΡŽ рСпозитория, вмСсто этого ΠΎΠ½ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰ΠΈΠΉ список ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ становятся Ρ‡Π°ΡΡ‚ΡŒΡŽ рСпозитория послС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ фиксации.

Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ / ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ удалСния Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ удаляСт Ρ„Π°ΠΉΠ» ΠΈΠ· Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ, Π½ΠΎ фактичСскоС ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° добавляСтся Π² ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰ΠΈΠΉ список ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΈ измСнСния вносятся Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ послС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ фиксации.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ Β«ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒΒ» измСняСт имя Ρ„Π°ΠΉΠ»Π° / ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ Β«ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅Β» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для пСрСмСщСния Ρ„Π°ΠΉΠ»ΠΎΠ² / ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ мСста Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅ Π² Π΄Π΅Ρ€Π΅Π²Π΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.

ΠžΠ±Π·ΠΎΡ€ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

Когда Π²Ρ‹ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию ΠΈΠ»ΠΈ обновляСтС Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию, ваша рабочая копия ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ синхронизируСтся с Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ. Но ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ вноситС измСнСния Π² свою Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию, ΠΎΠ½Π° становится Π½ΠΎΠ²Π΅Π΅, Ρ‡Π΅ΠΌ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. Π₯ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ являСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π²Π°ΡˆΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ β€˜commit’.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ «БостояниС» пСрСчисляСт измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ внСсСны Π² Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию. Как ΠΌΡ‹ ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ Ρ€Π°Π½Π΅Π΅, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ вноситС измСнСния Π² Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию, всС эти измСнСния становятся Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰Π΅Π³ΠΎ измСнСния списка. И опСрация «статус» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰ΠΈΠΉ список ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ «Бтатус» прСдоставляСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ список ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π½ΠΈΡ…. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ diff для просмотра Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ внСсСны Π² Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию.

Π˜ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ошибки

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ внСс измСнСния Π² свою Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ копию, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΎΡ‚Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ эти измСнСния. Π’ этой ситуации ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ опСрация Β«Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Β».

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Установка ΠΈ настройка SVN (сСрвСр+ΠΊΠ»ΠΈΠ΅Π½Ρ‚)

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ svn Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉΠŸΠΎ ΠΏΡ€ΠΎΡΡŒΠ±Π°ΠΌ трудящихся, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ учитывая, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎ установкС SVN (ΠΏΡ€Π°Π²Π΄Π° +Trac) ΠΏΠΎΠ΄ Linux, Ρ€Π΅ΡˆΠΈΠ» Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС установки ΠΈ настройки SVN для Windows.
НичСго Π½ΠΎΠ²ΠΎΠ³ΠΎ для людСй, Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π·Π½Π°ΡŽΡ‰ΠΈΡ… ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с SVN, здСсь Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚. ЦСль ΡΡ‚Π°Ρ‚ΡŒΠΈ β€” ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Ρƒ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², ΠΏΡ€Π΅Π±Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π½Π° Π₯Π°Π±Ρ€Π΅, Ρ‚Π°ΠΊΠΈ ΠΎΡΠΈΠ»ΠΈΡ‚ΡŒ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ этой систСмы контроля вСрсий.

Π‘ самого Π½Π°Ρ‡Π°Π»Π° ΡΠΎΠΎΠ±Ρ‰Π°ΡŽ, Ρ‡Ρ‚ΠΎ для SVN Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство. НазываСтся ΠΎΠ½ΠΎ svn-book ΠΈ доступно Π½Π° сайтС ΠΈ ΠΈΠ΄Π΅Ρ‚ вмСстС с CollabNet Subversion-server. Π’Π°ΠΊ ΠΆΠ΅ ΠΏΡ€ΠΎ установку ΠΈ настройку svnserv с Apache Π΅ΡΡ‚ΡŒ описаниС Π² ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ΅ ΠΏΠΎ TortioseSVN (довольно Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ подробная ΠΏΠΎΠΌΠΎΡ‰ΡŒ Π½Π° русском).

На самом Π΄Π΅Π»Π΅ SVN-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ Π±Π΅Π· сСрвСра. Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ (Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΊΠΎΠ΄Π°) ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π² любом ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π½Π° собствСнном HDD, ΠΈΠ»ΠΈ Π² сСтСвом ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π‘Π΅Ρ€Π²Π΅Ρ€ трСбуСтся лишь для ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ доступа ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ, Π½Π΅ большС. Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ годится, Ссли Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΈ Π΅ΠΌΡƒ просто Π½ΡƒΠΆΠ½Π° систСма контроля вСрсий своСго прилоТСния ΠΈ бэкапы.

Если Ρ€Π°Π±ΠΎΡ‚Π° вСдСтся Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΈΠ»ΠΈ трСбуСтся ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ доступ ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ (Ρ‡Π΅Ρ€Π΅Π· Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€), Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ SVN-сСрвСр. Он ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π»ΠΈΠ±ΠΎ Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-сСрвСр Apache. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС доступ ΠΊ рСпозиториям Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ svn://, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ β€” http(s)://. Доступ Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-сСрвСр Π½ΡƒΠΆΠ΅Π½ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ… с Ρ„Π°ΠΉΡ€Π²ΠΎΠ»ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ пропускаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ HTTP-Ρ‚Ρ€Π°Ρ„ΠΈΠΊ, Π° Ρ‚Π°ΠΊ ΠΆΠ΅ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚-ΠΏΡ€ΠΈΠΌΠΎΡ‡Π΅ΠΊ ΠΊ SVN-сСрвСру.

Установка сСрвСра

Π‘Π°ΠΌΡƒΡŽ ΡΠ²Π΅ΠΆΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ svn-cΠ΅Ρ€Π²Π΅Ρ€Π° всСгда ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° сайтС subversion.tigris.org. Чистый svn-сСрвСр Π±Π΅Π· Apache Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π΅, ΠΈ Π±Π΅Π· Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠΎΡ‡Π΅ΠΊ доступСн Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для вСрсии 1.4.6, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ тСкущая вСрсия 1.5.0. Для вСрсии 1.5.0 Π΅ΡΡ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠΌΠ΅ΠΆΠ΄Ρƒ CollabNet Subversion-server-1.5.0 (

5 MB). ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ΄Π΅Ρ‚ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π΅ с Apache, Π²Ρ‚ΠΎΡ€ΠΎΠΉ β€” с Apache ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠΌ для Windows Management Console. Π’Π°ΠΊ ΠΆΠ΅ для VisualSVN Π΅ΡΡ‚ΡŒ платная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ с Visual Studio.

A. Установка ΠΈ настройка сСрвСра VisualSVN (svn-сСрвСр + Apache + консоль управлСния) самая простая. Π­Ρ‚Ρƒ Π²Π΅Ρ€ΡΠΈΡŽ нСльзя ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±Π΅Π· Apache.

1) Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» VisualSVN-Server-1.5.1.msi ΠΈΠ»ΠΈ Π½ΠΎΠ²Π΅Π΅. ЗапускаСм установку.
2) Π’ мастСрС установки ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΈ для доступа HTTPS, Π»ΠΈΠ±ΠΎ просто HTTP. Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΠΎΡ€Ρ‚ для ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΡ ΠΏΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ ΠΈ способ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Π’Π°ΠΊ ΠΆΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.
3) ПослС установки ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Management Console (Ρ‡Π΅Ρ€Π΅Π· ΠŸΡƒΡΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€) ΠΈ создаСм ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ваши Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ доступны Ρ‡Π΅Ρ€Π΅Π· Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» (HTTP ΠΈΠ»ΠΈ HTTPS) ΠΏΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΈ установкС хосту: ΠΏΠΎΡ€Ρ‚Ρƒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, localhost:8443/svn/). Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (Ρ‡Π΅Ρ€Π΅Π· xsl), Ρ‚Π°ΠΊ ΠΈ ΠΈΠ· SVN-ΠΊΠ»ΠΈΠ΅Ρ‚Π°.

Π Π°Π±ΠΎΡ‚Π° с сСрвСром VisualSVNбСзусловно самая простая.

B. Установка CollabNet Subversion Server (svn-сСрвСр + Apache ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ).

1) Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» CollabNetSubversion-server-1.5.0-23.win32.exe ΠΈΠ»ΠΈ Π²Π΅Ρ€ΡΠΈΡŽ Π½ΠΎΠ²Π΅Π΅. ЗапускаСм Π΅Π³ΠΎ Π½Π° установку.
2) Π¨Π°Π³ Choose Components. УстанавливаСм Ρ„Π»Π°ΠΆΠΎΠΊ SVNSERVE Π² любом случаС. Если трСбуСтся ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊ ΠΆΠ΅ Apache для SVN, устанавливаСм Ρ„Π»Π°ΠΆΠΎΠΊ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π½Π΅Π³ΠΎ.
3) На шагС sunserve Configuration устанавливаСм ΠΏΠΎΡ€Ρ‚ для sunserve (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 3690, ΠΌΠ΅Π½ΡΡ‚ΡŒ Π΅Π³ΠΎ смысла Π½Π΅Ρ‚, Ссли ΠΎΠ½ Π½Π΅ занят) ΠΈ ΠΏΡƒΡ‚ΡŒ ΠΊ рСпозиториям (ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π³Π΄Π΅ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²).
4) Π—Π°Ρ‚Π΅ΠΌ настраиваСтся Apache: хост/ΠΏΠΎΡ€Ρ‚, ΠΏΡƒΡ‚ΡŒ ΠΊ рСпозиториям (Ρ‚ΠΎΡ‚ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ для svnserve) ΠΈ прСфикс для URL (http://host:port/prefix). ΠŸΡ€Π΅Ρ„ΠΈΠΊΡ Π½ΡƒΠΆΠ΅Π½ Π½Π° случай, Ссли Apache Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для обслуТивания SVN.

ПослС установки появятся Π΄Π²Π΅ Π½ΠΎΠ²Ρ‹Ρ… слуТбы Windows: Subversion Server (наш svnserv.exe) ΠΈ Apache2.2 (Ссли ΠΎΠ½ Π±Ρ‹Π» Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΡ€ΠΈ установкС). Π§Ρ‚ΠΎΠ±Ρ‹ всС Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ ΠΈΡ… Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ.

Π‘. Установка svnserve 1.4.6 (чистый svn-сСрвСр).

ИмСнно эту Ρ€Π°Π±ΠΎΡ‚Ρƒ (Ссли Π½Π΅ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ установку Apache) сдСлал Π·Π° вас установщик CollabNet Subversion Server. Π’ случаС установки svnserve 1.4.6 доступ ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ svn://.

D. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ рСпозитория. Π’Ρ‹Π΄Π΅Π»ΡΡŽ этот ΠΏΡƒΠ½ΠΊΡ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠΌ. Если Π² VisualSVN созданиС рСпозитория производится ΠΊΠ»ΠΈΠΊΠΎΠΌ ΠΌΡ‹ΡˆΠΈ, Ρ‚ΠΎ для svnserve (Π² Ρ‚ΠΎΠΌ числС Π² вСрсии ΠΎΡ‚ CollabNet) Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ создаСтся ΠΈΠ· консоли. Π’ поставкС snv-сСрвСра Π΅ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ» snv-install-folder\bin\svnadmin.exe. Если ΠΏΡƒΡ‚ΡŒ ΠΊ snv-install-folder\bin Π΅Ρ‰Π΅ Π½Π΅ прописан Π² PATH, сдСлайтС это.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ консоль (cmd) ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ для хранСния Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΈ ΠΏΡ€ΠΈ установкС (CollabNet) ΠΈΠ»ΠΈ создании сСрвиса (svnserve 1.4.6). Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ пустой ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, example-repository). Π’ консоли Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ: svnadmin create example-repository. Π’ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ созданном ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ появится структура Ρ„Π°ΠΉΠ»ΠΎΠ² svn. Π’ Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Β«ΡˆΡ‚ΡƒΠΊΒ», ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² svn-book ΠΈ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ΅.

Π’ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ conf ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ основныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ рСпозитория. ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго трСбуСтся Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ доступ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΊΠΎΠΌΡƒ-ΠΏΠΎΠΏΠ°Π»ΠΎ. Π’ Ρ„Π°ΠΉΠ»Π΅ svnserve.conf раскоммСнтируСм строки
# anon-access = read
# auth-access = write

НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΏΡ€ΠΎΠ±Π΅Π» послС #, Ρ‚.ΠΊ. ΠΈΠ½Π°Ρ‡Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ошибка чтСния ΠΊΠΎΠ½Ρ„ΠΈΠ³Π°. anon-access опрСдСляСт доступ Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ, auth-access β€” зарСгистрированным. Они ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ значСния Β«writeΒ», Β«readΒ» ΠΈ Β«noneΒ». ΠžΠ±Ρ‹Ρ‡Π½ΠΎ anon-access = none ΠΈ auth-access = write.

Π”Π°Π»Π΅Π΅ Π½Π°Π΄ΠΎ Ρ€Π°ΡΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ # password-db = passwd, Π° Π² Ρ„Π°ΠΉΠ» passwd Π² этом ΠΆΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ строку user = password.

Для Π½Π°Ρ‡Π°Π»Π° Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ доступа годится, Π½ΠΎ Π² послСдствии ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ Π½Π°Π΄ΠΎ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚ΡŒ (Ρ‡ΠΈΡ‚Π°Π΅ΠΌ svn-book).

На этом установка сСрвСра Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π° ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚.

Установка ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

НСкоторыС профСссионалы ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с консолью. НавСрноС это Π½Π΅ самый ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ способ, особСнно для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², поэтому Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ. Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с SVN Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ ΠΊ своим IDE. Π­Ρ‚ΠΎ самый Π»ΡƒΡ‡ΡˆΠΈΠΉ способ, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°Π·Π½Ρ‹Ρ… IDE ΠΌΠ½ΠΎΠ³ΠΎ ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² ΠΊ Π½ΠΈΠΌ Ρ‚ΠΎΠΆΠ΅, Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π½ΠΈΠΌΠΈ Π½Π΅ описываСм.

Π‘Π°ΠΌΡ‹ΠΌ популярным ΠΈ ΠΏΡ€ΠΈΠ·Π½Π°Π½Π½Ρ‹ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ SVN ΠΏΠΎΠ΄ Windows являСтся TortoiseSVN. ПослС Π΅Π³ΠΎ установки Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ «классичСски Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒΒ», ΠΊΠ»ΠΈΠ΅Π½Ρ‚ встраиваСтся Π² ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊ Windows, Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для Π½Π΅Π³ΠΎ доступны ΠΈΠ· контСкстного мСню Ρ„Π°ΠΉΠ»Π° (Π² Ρ‚.Ρ‡. ΠΈ Π² Total Commander).

ΠžΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ установку ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ смысла, Ρ‚Π°ΠΌ всС элСмСнтарно просто.

О Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с TortoiseSVN, ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ расписано Π² руководствС TortoiseSVN ΠšΠ»ΠΈΠ΅Π½Ρ‚ Subversion для Windows.

Π”ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ это ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ТСлания Π½Π΅Ρ‚, Π½ΠΎ всС ΠΆΠ΅ super-fast-start work with tsvn ΠΎΠΏΠΈΡˆΡƒ.

1) Для просмотра любого рСпозитория послС установки TortoiseSVN Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ контСкствноС мСню Π½Π° любом Ρ„Π°ΠΉΠ»Π΅ Π² систСмС, Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ мСню TortoiseSVNβ†’Repo-browser. Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ окошкС Π²Π²Π΅Π΄ΠΈΡ‚Π΅ адрСс рСпозитория с ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, localhost:8443/svn/test ΠΈΠ»ΠΈ svn://someserver:3690/proj1/trunc). ΠžΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ΡΡ ΠΎΠΊΠ½ΠΎ просмотра рСпозитория (с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² строки адрСса ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΡƒΡŽ Ρ€Π΅Π²ΠΈΠ·ΠΈΡŽ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ; HEAD β€” это послСдняя рСвизия).

2) Для создания локального рСпозитория (Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ сСрвСр) запускаСтся ΠΏΡƒΠ½ΠΊΡ‚ мСню TortoiseSVNβ†’Create repository here. Π½Π° Π½ΡƒΠΆΠ½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π’ Repo-browser Ρ‚Π°ΠΊΠΎΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ доступСн ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ file:///.

3) Для скачки сСбС вСрсии ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ рСпозитория запускаСтся ΠΏΡƒΠ½ΠΊΡ‚ мСню TortoiseSVNβ†’SVN Checkout Π½Π° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡΠΎΠ»ΡŒΠ΅Ρ‚ΡΡ вСрсия.

4) Если Π²Ρ‹ Π΅Ρ‰Π΅ Π½Π΅ использовали SVN ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°Π»ΠΈΡ‚ΡŒ Π½Π° сСрвСр свою Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ исходников, запуститС ΠΏΡƒΠ½ΠΊΡ‚ мСню TortoiseSVNβ†’Import. Π½Π° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π»Π΅ΠΆΠΈΡ‚ вСрсия (ΠΏΡ€ΠΈ этом Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ Π½Π°Π΄ΠΎ Π»ΠΈΡ‚ΡŒ Π² trunk).

5) TortoiseSVNβ†’Export. ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для получСния чистой вСрсии исходников ΠΈΠ· рСпозитория (Π±Π΅Π· слуТСбных Ρ„Π°ΠΉΠ»ΠΎΠ² контроля вСрсий).

6) Если контСкстноС мСню Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π½Π° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся локальной (Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ) ΠΊΠΎΠΏΠΈΠ΅ΠΉ рСпозитория, контСкстноС мСню Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒΡΡ. НапримСр, появятся ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ Update (ΡΠ»ΠΈΡ‚ΡŒ послСдниС измСнСния с сСрвСра) ΠΈ Commit (Π·Π°ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ваши измСнСния Π½Π° сСрвСр).

На послСдок Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠ½ΡƒΡŽ ΡΠ΅Ρ€ΠΈΡŽ статСй Π Π°Π±ΠΎΡ‚Π° с Tortoise SVN.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *