ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ svn ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
SVN Π΄Π»Ρ ΡΠ°ΠΉΠ½ΠΈΠΊΠΎΠ². Π§Π°ΡΡΡ I.
ΠΠ°Π½Π½ΡΠΉ ΡΠΈΠΊΠ» ΡΡΠ°ΡΠ΅ΠΉ ΠΏΠΎΡΠ²ΡΡΠ΅Π½ Π²Π²Π΅Π΄Π΅Π½ΠΈΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ SVN, Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Π‘ΡΠ°ΡΡΡ Π±ΡΠ»Π° Π½Π°ΠΏΠΈΡΠ°Π½Π° Π² ΠΏΠΎΠΌΠΎΡΡ ΠΌΠΎΠΈΠΌ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ SVN. ΠΡΠ°ΠΊ Π½Π°ΡΠ½Π΅ΠΌ Ρ Π°Π·ΠΎΠ².
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Subversion (SVN) β Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. SVN ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°ΠΌΠΈ, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠΌΠΈ Π² Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. SVN ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ :
Π‘ΠΏΠΈΡΠΎΠΊ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ²
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅
Π Π°Π±ΠΎΡΠ° Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ SVN ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ TortoiseSVN tortoisesvn.net/ Π²Π΅ΡΡΠΈΠΈ 1.5.8 ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ExamDiff.
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
re: error
Π Π΅ΡΠΈΠ» ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ Π΄Π°Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ.
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠΎΠ·Π΄Π°Π» ΠΏΠ°ΠΏΠΊΡ test, Π·Π°ΡΠ΅Π» Π² Π½Π΅Π΅ ΠΈ Π·Π°ΠΏΡΡΡΠΈΠ» repository browser.
ΡΠ½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ
Π£ΡΠΎΡΠ½ΠΈΡΠ΅ ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°.
«ΠΠΎΠ±Π°Π²Π»ΡΡΡ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΠΏΠ°ΠΏΠΊΠΈ ΠΈ ΡΠ°ΠΉΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π»ΡΡΡΠ΅ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΡΠΈΡ ΡΠ΅Π»Π΅ΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π΄Π»Ρ ΡΠ΅Π»Π΅ΠΉ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΏΠΊΠ°ΠΌΠΈ ΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ. Π ΡΠ°ΠΊΠΈΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΠΏΠΎΠΊ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ².»
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π²ΡΠ΅ ΠΆΠ΅ Π»ΡΡΡΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ°ΠΏΠΎΠΊ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²? Π ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ ΠΈΠ»ΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ?
SVN ΡΠΆΠ΅ ΡΡΡΠΏ Π΄Π°Π²Π½ΠΎ,
SVN ΡΠΆΠ΅ ΡΡΡΠΏ Π΄Π°Π²Π½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅ git ΠΈ Π±ΡΠ΄Π΅Ρ Π²Π°ΠΌ ΡΠ°ΡΡΡΠ΅!
ΠΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΠΏΡΠ°Π²Ρ. ΠΠΎ Π²ΠΎ
ΠΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΠΏΡΠ°Π²Ρ. ΠΠΎ Π²ΠΎ ΠΏΠ΅ΡΠ²ΡΡ :
Π‘ΡΡΡ Π΄Π°Π½Π½ΡΡ ΡΡΠ°ΡΠ΅ΠΉ Π½Π΅ ΡΠΊΠ°Π·Π°ΡΡ «Π΄Π΅Π»Π°ΠΉ ΡΠ°ΠΊ», Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΡ «ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ». ΠΡΠ΅ ΡΡΠΎ ΠΈΠ΄Π΅Ρ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π·Π°Π΄Π°Ρ. Π ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° Π»ΡΠ±ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ. ΠΠ½Π΅ git ΠΈΠ·Π±ΡΡΠΎΡΠ΅Π½. Π Π½Π° Π²ΠΊΡΡ ΠΈ ΡΠ²Π΅Ρ Π²ΡΠ΅ ΡΠ»ΠΎΠΌΠ°ΡΡΠ΅ΡΡ ΡΠ°Π·Π½ΡΠ΅
Π Π΅ΡΠ»ΠΈ Ρ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Ρ ΠΎΡΡ ΡΡΠΎΠ±Ρ
Π Π΅ΡΠ»ΠΈ Ρ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Ρ ΠΎΡΡ ΡΡΠΎΠ±Ρ ΡΡΠ° ΠΏΠ°ΠΏΠΊΠ° Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π±ΡΠ»Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ?
ΠΠ΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΊΠ°ΠΊΠ°Ρ ΠΏΠ°ΠΏΠΊΠ°. Π SVN
ΠΠ΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΊΠ°ΠΊΠ°Ρ ΠΏΠ°ΠΏΠΊΠ°.
Π SVN ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π»ΠΈΠ±ΠΎ Π΅ΡΡΡ, Π»ΠΈΠ±ΠΎ Π΅Π³ΠΎ Π½Π΅Ρ. ΠΡΠ»ΠΈ Π²Π°ΠΌ ΠΏΠ°ΠΏΠΊΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½Π΅ Π½ΡΠΆΠ½Π°, ΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π°Π»ΠΈΡΠ΅ Π΅Π΅. ΠΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΠΉΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²ΡΠ²Π΅ΡΡΠΈ ΡΠ°Π±ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΡ ΠΈΠ· ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ SVN ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅ export
ΠΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ ΡΡΠ°ΡΡΡ
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΡΡΠ°ΡΡΡ. ΠΡΠ΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΈ Π΄ΠΎΡ ΠΎΠ΄ΡΠΈΠ²ΠΎ )
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° 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.
Subversion
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Subversion (ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΠΎ SVN) β ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ (Version Control System, VCS). ΠΠ±ΡΡΠ½ΠΎ ΡΡΠ»Π·Ρ ΡΡΠΎΠ³ΠΎ ΡΠΎΠ΄Π° ΡΡΠΈΡΠ°ΡΡΡΡ ΡΠ΅ΠΌΠΈ, ΠΊΡΠΎ Ρ Π½ΠΈΠΌΠΈ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌ, ΡΠ΅ΠΌ-ΡΠΎ Π½ΡΠΆΠ½ΡΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ². ΠΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, ΠΎΠ½ΠΈ ΠΊΡΠ°ΠΉΠ½Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ Π΄Π°ΠΆΠ΅ ΠΎΠ΄ΠΈΠ½ΠΎΡΠΊΠ΅, ΠΈ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ β Π²ΡΠ΅ΠΌ, ΠΊΠΎΠΌΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΡΠ°ΠΉΠ»Ρ. Π’Π°ΠΊ, Ρ Π²ΡΡΡΠ΅ΡΠ°Π» Π²Π΅ΡΡΠΌΠ° Π²ΠΎΡΡΠΎΡΠΆΠ΅Π½Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ CVS (ΠΈΠ΄Π΅ΠΉΠ½ΡΠΉ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΈΠΊ SVN ΠΈ ΠΏΠ΅ΡΠ²Π°Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½Π°Ρ VCS β Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΌΡ ΠΎΠ½Π° Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π°) ΠΎΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ ΡΠΎ Π»ΠΈ ΠΆΡΡΠ½Π°Π»ΠΈΡΡΠ°, ΡΠΎ Π»ΠΈ ΠΏΠΈΡΠ°ΡΠ΅Π»Ρ, Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π²ΡΠ΅Π³ΠΎ.
ΠΠΎΡΠ΅ΠΌΡ SVN?
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SVN?
Subversion β ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ β ΡΠΎ Π΅ΡΡΡ, ΠΎΠ½Π° Ρ ΡΠ°Π½ΠΈΡ ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΈΡ ΠΈΡΡΠΎΡΠΈΡ Π² ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠΌ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. Subversion ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π° Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ β ΠΎΠ½Π° ΡΠ»Π΅Π΄ΠΈΡ Π·Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΎΡΠ΄Π°Π½Π½ΡΡ ΠΏΠΎΠ΄ Π΅Π΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ, ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΈΡ . Π’Π°ΠΊΠΆΠ΅, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ CVS, SVN ΡΠ»Π΅Π΄ΠΈΡ ΠΈ Π·Π° ΠΏΠ°ΠΏΠΊΠ°ΠΌΠΈ. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅ΠΉ ΠΎΠ± ΠΎΡΠ»ΠΈΡΠΈΡΡ (ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ΅) ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΡΡ, ΡΠ°Π·Π΄Π΅Π» Β«Subversion ΠΈ CVSΒ».
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ
Π ΠΊΠ°ΠΊ Ρ ΡΡΠΈΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ?
Π’Π°ΠΊΠΆΠ΅ ΡΡΠΎΠΈΡ ΡΡΠΈΡΡΠ²Π°ΡΡ, ΡΡΠΎ ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ Π·Π°Π»ΠΈΡΠΎΠ΅ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΡΠ°ΠΌ Π½Π°Π²ΡΠ΅Π³Π΄Π° β Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ΅Π²ΠΈΠ·ΠΈΠ΅ΠΉ, ΠΎΠ½ΠΎ ΠΎΡΡΠ°Π½Π΅ΡΡΡ Π² ΡΠΎΠΉ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΠΏΠ°Π»ΠΎ. ΠΠΎΡΡΠΎΠΌΡ ΠΏΠΎΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ Π½Π΅ Π·Π°Π»ΠΈΠ²Π°ΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΡΠ°ΠΉΠ» Ρ ΠΏΠ°ΡΠΎΠ»ΡΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π½Π΅Π½ΡΠΆΠ½ΡΠΉ Π·Π΄ΠΎΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π·Π΄ΡΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠ²ΠΎΠΈΠΌ Π²Π΅ΡΠΎΠΌ.
Π’ΠΎΡΠ½Π΅Π΅, ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅ΡΠΎΠ΄ Π΅ΡΡΡ β Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π°ΠΌΠΏΠΈΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΏΡΠΎΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ Π΄Π°ΠΌΠΏ, ΡΠ΄Π°Π»ΠΈΠ² ΠΈΠ· Π½Π΅Π³ΠΎ Π²ΡΠ΅Π΄Π½ΡΠΉ ΡΠ°ΠΉΠ», Π³ΡΠΎΡ
Π½ΡΡΡ ΡΡΠ°ΡΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ, Π·Π°Π»ΠΈΠ² Π² Π½Π΅Π³ΠΎ ΠΏΡΠΎΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π½ΡΠΉ Π΄Π°ΠΌΠΏ. ΠΠΎ ΡΡΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎ, Π½ΠΎ ΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (Π° ΡΠΎΡΠ½Π΅Π΅ β ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ Ρ Π½ΠΈΠΌ).
Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ²
ΠΡΠ»ΠΈ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° β Π±ΡΠ΄ΡΡ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ. ΠΠΎΠΏΡΡΡΠΈΠΌ, Π΅ΡΡΡ Π΄Π²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ β ΠΠ°ΡΡΠΈ ΠΈ Π‘Π°Π»Π»ΠΈ (Π΄Π°, Ρ ΡΠΏΠ΅ΡΠ²Π° Π·Π°Π³Π»ΡΠ½ΡΠ» Π² SVN Book, Π½ΠΎ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ ΠΎΡΡΡΠ΄Π° ΡΡΠ½ΡΡΡ Π»Π΅Π½Ρ). ΠΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΠ°ΠΉΠ»ΠΎΠΌ Π.
ΠΠΊΡΠΏΠΎΡΡ
ΠΠ΅ΡΠ²ΠΈ
SVN ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ΄Π΅ΠΎΠ»ΠΎΠ³ΠΈΡ Π²Π΅ΡΠ²Π΅ΠΉ β ΠΊΠΎΠ³Π΄Π° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΏΠΎΠ±ΠΎΡΠ½ΡΠ΅, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΠ²ΡΠΌΠΈ. ΠΡΠ°Π²Π΄Π°, ΠΏΠΎΠΊΠ»ΠΎΠ½Π½ΠΈΠΊΠΈ Git ΡΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡ, ΡΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²Π΅ΡΠ²Π΅ΠΉ Π² SVN Π³ΠΎΠ²Π½ΠΎ ΠΈ Π½Π΅Π΄ΠΎΡΡΠΎΠΉΠ½Π° ΡΠ°ΠΊΠΎΠ²ΠΎΠΉ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΏΡΠ°Π²Ρ, Git ΠΈ ΠΏΡΠ°Π²Π΄Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΎΡΠ΅Π½Ρ Π»ΡΠ±ΠΎΠΏΡΡΠ½ΠΎ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ ΡΡΠ΅Π²ΠΎΠΉ Ρ
ΡΡΠ΅ΠΉ Π²Π΅ΡΠ²Π΅ΠΉ ΡΠ΄ΡΠ° Linux (Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈ Π±ΡΠ» ΡΠΎΠ·Π΄Π°Π½ Π’ΠΎΡΠ²Π°Π»ΡΠ΄ΡΠΎΠΌ).
Π‘ Π²Π΅ΡΠ²ΡΠΌΠΈ Ρ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π», ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΏΠΎΡΠΈΡΠ°ΡΡ Π½Π° ΡΡΡ ΡΠ΅ΠΌΡ SVN Book.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
Π§ΡΠΎΠ±Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ, Π½ΡΠΆΠ΅Π½, ΠΊΠ°ΠΊ Π½ΠΈ ΡΡΡΠ°Π½Π½ΠΎ, ΡΠ°ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. Π₯ΠΎΡΠΎΡΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡΡ ΠΊ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ β ΠΎΠ½ ΡΠΆΠ΅ Π΅ΡΡΡ. Π Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡ ΡΠ°ΠΌ? Π’ΠΎΠ³Π΄Π° Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ. Π ΡΡΡ Π΅ΡΡΡ Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ° β Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ β Π½Π°Π΄ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠ°ΠΏΠΊΡ ΠΏΠΎΠ΄ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ°ΡΠ΅ΠΌ β ΡΠΎΠ·Π΄Π°ΡΡ Π² Π½Π΅ΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ create (ΡΠΎΡΠ½Π΅Π΅, Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° β svnsdmin create). ΠΡΠΈ ΡΡΠΎΠΌ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΈΠΏ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ β FSFS ΠΈΠ»ΠΈ BDB. ΠΠ΅ Π±ΡΠ΄Ρ Π²Π΄Π°Π²Π°ΡΡΡΡ Π² ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ, Π½ΠΎ Π»ΡΡΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ FSFS (Π° ΡΠ²Π΅ΠΆΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΠ°ΠΊ ΠΈ Π΄Π΅Π»Π°ΡΡ ΠΏΠΎ Π΄Π΅ΡΠΎΠ»ΡΡ). ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, BDB ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π΅Π»ΡΠ·Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π° Π½Π΅Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° ΠΏΠΎΠ΄ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΡΠ΅ΡΠ΅Π²ΠΎΠΌ ΡΠ΅ΡΡΡΡΠ΅) β ΡΠ΅ΡΠ΅Π· Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΎΠ½ ΠΏΡΠΎΡΡΠΎ ΡΠ»ΠΎΠΌΠ°Π΅ΡΡΡ.
URL Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ β file:///path/to/repository, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΠΏΠ°ΠΏΠΊΠ΅ C:\MyRepository, ΡΠΎ Π΅Π³ΠΎ URL β file:///C:/MyRepository.
Π‘ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ SVN ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ β ΡΠ΅ΡΠ²Π΅Ρ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ. ΠΠ»Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (ΠΊΠ°ΠΊ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ, ΡΠ°ΠΊ ΠΈ Π²ΡΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π² ΡΠ΅ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ) ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° ΡΡΠΈΠ»ΠΈΡΠ° svnadmin.
Π‘Π²Π΅ΠΆΠ΅ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΡΡΡ, ΠΈΠΌΠ΅Π΅Ρ Π½ΡΠ»Π΅Π²ΡΡ ΡΠ΅Π²ΠΈΠ·ΠΈΡ ΠΈ Π½Π΅ΠΏΡΠΈΠ³ΠΎΠ΄Π΅Π½ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ. Π Π½Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π°ΡΠ°Π»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π°Π΄ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠ°ΠΏΠΊΡ Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ Π½Π°ΡΠ°Π»ΡΠ½ΡΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ import. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΡΠ°Π±ΠΎΡΡΡ ΠΊΠΎΠΏΠΈΡ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π½Π΅ΠΉ, Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠ°ΠΏΠΊΡ ΡΠ΄Π°Π»ΠΈΡΡ.
ΠΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌ ΡΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ. ΠΠΎΠΎΠ±ΡΠ΅, Ρ ΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ°ΠΊ ΡΠ³ΠΎΠ΄Π½ΠΎ, Π½ΠΎ Π΅ΡΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ. Π‘ΠΎΠ³Π»Π°ΡΠ½ΠΎ Π΅ΠΌΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΏΡΠΈ ΠΈΠΌΠΏΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΏΡΡΡΡΠ΅ ΠΏΠ°ΠΏΠΊΠΈ trunk, branches ΠΈ tags. ΠΡΠ»ΠΈ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ Ρ ΡΠ°Π½ΠΈΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² β ΡΠΎ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΠ°ΠΏΠΊΠ°, Π° ΡΠΆΠ΅ Π² ΡΡΠΈΡ ΠΏΠ°ΠΏΠΊΠ°Ρ β ΠΏΠ°ΠΏΠΊΠΈ trunk, branches ΠΈ tags.
Π£Π΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
Π£Π΄Π°Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ ΠΈ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅.
Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ (Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ Ρ
ΠΎΡΡΠΈΠ½Π³Π΅) Π½Π° Ρ
ΠΎΡΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠ΄Π½ΡΡΡ ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ SVN ΡΠ΅ΡΠ²Π΅Ρ β ΡΠΎΠ΄Π½ΠΎΠΉ svnserve (Π³ΠΎΠ²ΠΎΡΡΡ, ΠΊΡΠ°ΠΉΠ½Π΅ Π΄ΡΡΡΠ²) ΠΈΠ»ΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ apache+webdav ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ SVN-ΠΏΠ»Π°Π³ΠΈΠ½. ΠΠΎ ΡΡΠΎ ΡΠ΅ΠΌΠ° Π½Π΅ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ, Π΄Π° ΠΈ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌ Ρ Ρ Π½Π΅ΠΉ.
ΠΠΎ Π΅ΡΡΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π²Π°ΡΠΈΠ°Π½Ρ β ΡΡΠΎ SVN-Ρ
ΠΎΡΡΠΈΠ½Π³ΠΈ. ΠΡ
Π½Π΅ΠΌΠ°Π»ΠΎ, ΠΊΠ°ΠΊ ΠΏΠ»Π°ΡΠ½ΡΡ
, ΡΠ°ΠΊ ΠΈ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ
. ΠΠ½ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠΆΠ΅ Π³ΠΎΡΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π° Π΅ΡΠ»ΠΈ ΠΈ Π½Π΅Ρ β ΡΠΎ ΡΠ°ΠΌΠΈ ΡΠ°ΡΡΠΊΠ°ΠΆΡΡ, ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ. ΠΠΈΡΠ½ΠΎ Ρ ΠΏΠΎΠ»ΡΠ·ΡΡΡΡ Ρ
ΠΎΡΡΠΈΠ½Π³ΠΎΠΌ ΠΎΡ Π³ΡΠ³Π»Π°. ΠΡΡΠ°Π»ΡΠ½ΡΡ
β Π΄ΠΎΡΡΠ°Π²ΠΈΡ ΠΎΠ½ ΠΆΠ΅ π
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΊΠΎΠΏΠΈΠΈ Π½Π° ΡΠ°Π·Π½ΡΡ
ΠΊΠΎΠΌΠΏΠ°Ρ
, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ Π»ΡΠ΄ΡΠΌΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π° Π΄ΡΡΠ³ΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ ΠΌΠΈΡΠ°. Π ΡΠ°ΠΊΠΆΠ΅, ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ β ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π²ΡΠ΅ΠΌ ΠΆΠ΅Π»Π°ΡΡΠΈΠΌ Π΄ΠΎΡΡΡΠΏ (Π½Π° ΡΡΠ΅Π½ΠΈΠ΅) ΠΊ ΡΠ°ΠΌΠΎΠΉ ΡΠ²Π΅ΠΆΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΈΡΡ
ΠΎΠ΄Π½ΠΈΠΊΠΎΠ².
ΠΡΡΡΠΎ. Π Π³Π΄Π΅ Π²Π·ΡΡΡ?
ΠΠ° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ°ΠΉΡΠ΅, ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ΄ ΠΊΡΡΠ»ΡΡΠΊΠΎΠΌ Ρ Apache. ΠΠ΄Π½Π°ΠΊΠΎ, ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ β ΡΡΠΎ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½Π°Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°. ΠΠ΅ Π²ΡΠ΅ΠΌ ΠΎΠ½ΠΈ Π½ΡΠ°Π²ΡΡΡΡ, Ρ ΠΎΡΡ ΡΠ²ΠΎΠΈ ΠΏΠ»ΡΡΡ Ρ Π½ΠΈΡ Π΅ΡΡΡ. ΠΠΎΡΡΠΎΠΌΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Π½Π° ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ.
ΠΠΈΡΠ½ΠΎ ΠΌΠ½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ TortoiseSVN β ΡΡΠΎ GUI-ΠΊΠ»ΠΈΠ΅Π½Ρ (Ρ.Π΅. Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΎΠ½ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ°ΠΌ, Π° Π½Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΈΡ
ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ svn), Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΠΉ ΠΊΠ°ΠΊ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΠΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ° Windows. ΠΡΡ ΡΠ°Π±ΠΎΡΠ° Ρ Π½ΠΈΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ ΠΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ°. Π’Π°ΠΊΠΆΠ΅ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎ Ρ Total Commander ΠΈ Π΅ΠΌΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌΠΈ ΡΠ°ΠΉΠ»-ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ°ΠΌΠΈ (ΡΠ΅ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΠΈΠΊΠΎΠ½ΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ Π²ΠΈΠ½Π΄Ρ ΠΈ ΡΠΌΠ΅ΡΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ ΠΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ°). ΠΠΎΠΊΠ»ΠΎΠ½Π½ΠΈΠΊΠ°ΠΌ FAR’Π° ΠΈ Π΄ΡΡΠ³ΠΈΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½ΠΎΠΊ ΠΌΠΎΠ³Ρ ΠΏΠΎΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π³ΡΠ³Π». Π’Π°ΠΊΠΆΠ΅ TortoiseSVN ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ², Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Ρ ΠΎΠ²Π΅ΡΠ»Π΅ΠΈ Π½Π° ΠΈΡ
ΠΈΠΊΠΎΠ½ΠΊΠΈ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ Π²Π·Π³Π»ΡΠ΄Π° Π²ΠΈΠ΄Π½ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ β ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
Π‘ΡΠΎΠΈΡ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ TortoiseSVN Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠ²ΠΎΠΈ ΠΏΡΠ½ΠΊΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌΠΎΠ΅ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΊΠΈΠ²Π°Π½ΠΈΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²/ΠΏΠ°ΠΏΠΎΠΊ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ. Π’Π°ΠΌ ΡΠ°ΠΊΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠ°ΠΊ Export, Copy, Move.
ΠΠ»ΡΠΎ, Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΡΠ·ΡΠΊΠΎΠ²ΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΊ TortoiseSVN ΠΈΠΌΠ΅Π΅ΡΡΡ Π³ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°Π½ΡΠ°Π» Π² PDF, Π½Π° ΡΡΡΡΠΊΠΎΠΌ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΏΠΎΡΠΈΡΠ°ΡΡ, ΡΡΠΎ ΡΠ²ΠΎΠ΅ΠΎΠ±ΡΠ°Π·Π½ΡΠΉ Π°Π½Π°Π»ΠΎΠ³ SVN Book Π΄Π»Ρ TortoiseSVN.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ TortoiseSVN
ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΌΠ΅Π½Ρ ΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ°, Π²ΡΠ·Π²Π°Π½Π½ΠΎΠ΅ Π½Π° Π»ΡΠ±ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ΅, ΠΏΡΠ½ΠΊΡ TortoiseSVN->Settings. ΠΡ ΡΠ°ΠΌ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ, ΠΎΠΏΠΈΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅.
ΠΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π½Π°ΡΡΡΠΎΠΈΡΡ Global ignore pattern β ΡΠΏΠΈΡΠΎΠΊ ΠΌΠ°ΡΠΎΠΊ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ SVN Π±ΡΠ΄Π΅Ρ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ β Ρ.Π΅. Π½Π΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ ΠΈΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ, Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Ρ.Π΄. Π‘ΡΠ΄Π° ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²Π½Π΅ΡΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ β Π½Π° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π½Π΅ΡΠ΅Π½Ρ ΡΠ°ΠΉΠ»Ρ, ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Delphi Π²Π΅ΡΡΠΈΠΉ ΠΏΠΎ 7-Ρ. ΠΠ΄Π΅ΡΡ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΡΠ·ΡΠΊ, ΡΡΡΡΠΊΠΈΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ β Π½ΠΎ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Ρ.ΠΊ. ΠΏΠΎΠ»ΡΠ·ΡΡΡΡ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ.
ΠΠ΄Π΅ΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ Π·Π°ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ Status cache. ΠΡΠ±ΡΠ°Π½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΡΠ°ΡΡΡΠ° β ΠΏΠ°ΠΏΠΊΠ° Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π° ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π΅Π΅ ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΎΠΊ.
ΠΡΠΈ ΡΠ½ΡΡΠΎΠΉ Π³Π°Π»ΠΎΡΠΊΠ΅ Β«Show overlays and context menu only in explorerΒ» ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ TSVN ΠΈΠ· ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠΎΠ² Π²ΡΠΎΠ΄Π΅ Total Commander.
ΠΠ°Π»ΠΎΡΠΊΠΈ Show overlay for ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ Π½Π°Π·ΠΎΠΉΠ»ΠΈΠ²ΡΠ΅ ΠΌΠ΅ΡΠΊΠΈ Π½Π° ΡΠ°ΠΉΠ»Π°Ρ
, Π½Π΅ Π½Π°Ρ
ΠΎΠ΄ΡΡΠΈΡ
ΡΡ ΠΏΠΎΠ΄ ΠΏΡΠΈΡΠΌΠΎΡΡΠΎΠΌ SVN.
ΠΠ°Π»ΠΎΡΠΊΠΈ Π² ΠΏΠΎΠ»Π΅ Drive Types ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΎΡΠ²Π°Π΄ΠΈΡΡ SVN ΠΎΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π½Π° ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠ΅ Π½ΠΎΡΠΈΡΠ΅Π»ΠΈ ΠΈ ΡΠ»Π΅ΡΠΊΠΈ (ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ β ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΎ Π½Π΅ ΠΌΠ΅ΡΠ°Π»ΠΎ ΠΈΡ
ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ), Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΡ Π·Π°Π΄Π°Π½Π½ΡΡ
Π΄ΠΈΡΠΊΠΎΠ².
ΠΠ° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Network ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΡΠΈ ΠΈ Π²ΡΠ±ΡΠ°ΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ Π΄Π»Ρ SSH, Π½ΠΎ Ρ ΠΌΠ΅Π½Ρ ΡΠ°ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (ΡΠ°Π·Π²Π΅ ΡΡΠΎ, ΠΠΠΠΠ, Ρ Π²ΡΡΡΠ½ΡΡ ΡΠΊΠ°Π·Π°Π» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»Π°Π³Π°ΡΡΠΈΠΉΡΡ ΠΊ TortoiseSVN TortoisePLink.exe ΠΊΠ°ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ SSH).
ΠΠ° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Saved data ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΡΠΈΡΡ ΠΈΡΡΠΎΡΠΈΠΈ ΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
ΠΠ° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Hook scripts ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠΎΠ±ΡΡΠΈΡΡ . Π£ ΠΌΠ΅Π½Ρ ΡΠ°ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π½Π΅ΡΠ΅Π½ ΡΠΊΡΠΈΠΏΡ, ΡΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΠΈΠΉ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π Π.
ΠΠ° ΠΎΡΡΠ°Π»ΡΠ½ΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ (ΠΊΡΠΎΠΌΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΡ Π΄Π°Π»Π΅Π΅) ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²ΠΈΠ΄Π° ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ. ΠΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΈΡ Π½Π° ΡΠ²ΠΎΠΉ Π²ΠΊΡΡ ΠΈΠ»ΠΈ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠΈΡΡΡΡ Π΄Π΅ΡΠΎΠ»ΡΠ½ΡΠΌΠΈ.
Π‘Π²ΠΈΡΡΠ΅Π»ΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΄Π΅Π»ΠΊΠΈ
ΠΠ° TortoiseSVN ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π²Π΅ΡΠ°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ, ΡΠ°ΡΡΠΈΡΡΡΡΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ. ΠΡΠ°ΠΊ, ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ.
ΠΠ½Π΅ΡΠ½ΠΈΠ΅ Diff/Merge
Π₯ΠΎΡΡ ΠΊ TortoiseSVN ΠΏΡΠΈΠ»Π°Π³Π°Π΅ΡΡΡ ΡΠΎΠ΄Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° TortoiseMerge, ΠΌΠ½Π΅ Π±ΠΎΠ»ΡΡΠ΅ Π½ΡΠ°Π²ΡΡΡΡ WinMerge Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² (ΠΎΠ½ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΈΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Π½ΡΡΡΠΈ ΡΡΡΠΎΠΊ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ» ΠΏΡΡΠΌΠΎ Π² Π½Π΅ΠΌ ΠΈ ΡΠΌΠ΅Π΅Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΈΠ²Π°ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ·ΡΠΊΠΎΠ², Π½ΠΎ Π½Π΅ ΡΠΌΠ΅Π΅Ρ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ ΡΡΠΈ ΡΠ°ΠΉΠ»Π°) ΠΈ KDiff3 (ΡΠ΄ΠΎΠ±Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ»ΠΈΡΠ½ΠΈΡ ΡΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½Π°Ρ ΠΏΠΎΠ΄ KDE). ΠΡΠΎΠΌΠ΅ Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ Beyond Compare, Structured Difference Viewer, ΡΡΠΈΠ»ΠΈΡΡ Diff/Merge ΠΈΠ· ΡΠΎΡΡΠ°Π²Π° Perforce ΠΈ Borland StarTeam (ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΡΠ°ΠΌ, Π½Π΅ ΠΏΠΎΠΌΠ½Ρ ΡΠΆΠ΅) β Π½ΠΎ ΠΈΠ· Π½ΠΈΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅.
ΠΠ°ΡΡΡΠ°ΠΈΠ²Π°ΡΡΡΡ ΡΡΠΈ ΡΡΠΈΠ»ΠΈΡΡ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ External Programs, Π² ΠΏΡΠΈΠ»Π°Π³Π°Π΅ΠΌΠΎΠΌ Ρ
Π΅Π»ΠΏΠ΅ Π΅ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ
ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ
ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. Π ΠΌΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ
Π΄Π»Ρ ΠΎΠ±ΠΎΠΈΡ
Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Diff ΠΈ
Π΄Π»Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Merge.
ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Π±Π°Π³ΡΡΠ΅ΠΊΠ΅ΡΠ°ΠΌΠΈ
ΠΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ»Π°Π³ΠΈΠ½Π°ΠΌΠΈ, ΡΠΏΠΈΡΠΎΠΊ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π° ΡΠ°ΠΉΡΠ΅ TortoiseSVN. ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠ»Π°Π³ΠΈΠ½Π° Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ Π Π Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Hook Scripts->Issue Tracker Integration.
CommitMonitor
ΠΠ°ΡΠ° Π³Π»Π°Π·ΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΠ΄ΡΡ Π² ΡΡΠ΅Π΅ ΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ. ΠΠ½ΠΎΠ³Π΄Π° ΠΏΠΎΠ»Π΅Π·Π½ΠΎ. ΠΠ±ΠΈΡΠ°Π΅Ρ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΡΠΊΠ°ΠΌΠΈ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Other Tools ΡΠ°ΠΉΡΠ° TortoiseSVN.
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 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
Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠΎΠ·Π΄Π°Π½. ΠΡΡΡΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ Π½ΡΠ»Π΅Π²ΠΎΠΉ Π½ΠΎΠΌΠ΅Ρ ΡΠ΅Π²ΠΈΠ·ΠΈΠΈ. Π’Π΅ΠΏΠ΅ΡΡ Π² Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΠ°Π»ΡΠ½Π΅ΠΉΡΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΊΠ°Ρ.
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΡΠΌΠ΅Π½ΠΈΡΡ ΠΎΡΠ²Π΅Ρ
ΠΠ»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π°Π²ΡΠΎΡΠΈΠ·ΠΎΠ²Π°ΡΡΡΡ.