Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий: Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий? | Atlassian Git Tutorial

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий? | Atlassian Git Tutorial

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

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

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

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ…, постоянно ΠΏΠΈΡˆΡƒΡ‚ Π½ΠΎΠ²Ρ‹ΠΉ исходный ΠΊΠΎΠ΄ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, прилоТСния ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ Π² Π²ΠΈΠ΄Π΅ структуры ΠΏΠ°ΠΏΠΎΠΊ ΠΈΠ»ΠΈ Β«Π΄Π΅Ρ€Π΅Π²Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Β». Один Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ Π½ΠΎΠ²ΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ, Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π² это ΠΆΠ΅ врСмя ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎΠ΄ для исправлСния нСсвязанной ошибки, Ρ‚. Π΅. ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π½ΠΎΡΠΈΡ‚ΡŒ свои измСнСния Π² нСсколько частСй Π΄Π΅Ρ€Π΅Π²Π° Ρ„Π°ΠΉΠ»ΠΎΠ².

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΡƒΡ‚Π΅ΠΌ отслСТивания ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСнСния, внСсСнного ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ участником, ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅. ИзмСнСния, внСсСнныС Π² ΠΎΠ΄Π½Ρƒ Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ совмСстимы с измСнСниями, внСсСнными Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ, Ρ€Π°Π±ΠΎΡ‚Π°Π²ΡˆΠΈΠΌ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ. Вакая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π° ΠΈ Ρ€Π΅ΡˆΠ΅Π½Π° согласно Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Ρƒ, Π½Π΅ создавая прСпятствий для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ части ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²ΠΎ врСмя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния любоС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ само ΠΏΠΎ сСбС привСсти ΠΊ появлСнию Π½ΠΎΠ²Ρ‹Ρ… ошибок, ΠΈ Π½ΠΎΠ²ΠΎΠΌΡƒ ПО нСльзя Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ тСстированиС. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ процСссы тСстирования ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ΄ΡƒΡ‚ Ρ€ΡƒΠΊΠ° ΠΎΠ± Ρ€ΡƒΠΊΡƒ, ΠΏΠΎΠΊΠ° новая вСрсия Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ‚ΠΎΠ²Π°.

Π₯ΠΎΡ€ΠΎΡˆΠ΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС для управлСния вСрсиями ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, Π½Π΅ навязывая ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ способ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π’ ΠΈΠ΄Π΅Π°Π»Π΅ ΠΎΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° любой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ½ΡƒΠΆΠ΄Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму ΠΈΠ»ΠΈ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ инструмСнтов. Π₯ΠΎΡ€ΠΎΡˆΠΈΠ΅ систСмы управлСния вСрсиями ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΏΠ»Π°Π²Π½Ρ‹ΠΉ ΠΈ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹ΠΉ процСсс внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΠ΄ ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ±Π΅Π³Π°ΡŽΡ‚ ΠΊ Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΎΠΌΡƒ ΠΈ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΌΡƒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡƒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π°Π΅Ρ‚ Π·Π΅Π»Π΅Π½Ρ‹ΠΉ свСт ΠΎΠ΄Π½ΠΎΠΌΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ, Π½ΠΎ ΠΏΡ€ΠΈ этом Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ….

Π“Ρ€ΡƒΠΏΠΏΡ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ Ρ„ΠΎΡ€ΠΌΡƒ управлСния вСрсиями, часто ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ Π½Π΅Π·Π½Π°Π½ΠΈΠ΅ ΠΎΠ± измСнСниях, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΈΠ»ΠΈ созданиС Π² Π΄Π²ΡƒΡ… нСсвязанных частях Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ нСсовмСстимыми ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Ρ‚Π΅ΠΌ приходится скрупулСзно Ρ€Π°ΡΠΏΡƒΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ. Если Π²Ρ‹ ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ€Π°Π½Π΅Π΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ примСняли ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ вСрсиями, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΈ вСрсии своих Ρ„Π°ΠΉΠ»ΠΎΠ², добавляя суффиксы Ρ‚ΠΈΠΏΠ° Β«Ρ„ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉΒ» ΠΈΠ»ΠΈ «послСдний», Π° ΠΏΠΎΠ·ΠΆΠ΅ появлялась новая Ρ„ΠΈΠ½Π°Π»ΡŒΠ½Π°Ρ вСрсия. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ использовали ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π°, ΠΊΠΎΠ³Π΄Π° Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ возмоТности, Π½Π΅ удаляя ΠΈΡ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ опасались, Ρ‡Ρ‚ΠΎ этот ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠ·ΠΆΠ΅. РСшСниСм всСх ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ являСтся ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ вСрсиями.

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

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС контроля вСрсий рСкомСндуСтся для ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ DevOps. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ вСрсиями ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ быстрСС, Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО β€” ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ увСличСния числа Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Π—Π° послСдниС нСсколько дСсятилСтий систСмы контроля вСрсий (Version Control Systems, VCS) стали Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΌΠΈ, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ это ΡƒΠ΄Π°Π»ΠΎΡΡŒ Π»ΡƒΡ‡ΡˆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ…. БистСмы VCS ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ инструмСнтами SCM (управлСния исходным ΠΊΠΎΠ΄ΠΎΠΌ) ΠΈΠ»ΠΈ RCS (систСмой управлСния рСдакциями). Один ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярных Π½Π° сСгодняшний дСнь инструмСнтов VCS называСтся Git. Git относится ΠΊ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ распрСдСлСнных систСм контроля вСрсий, извСстных ΠΊΠ°ΠΊ DVCS (эта Ρ‚Π΅ΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ рассмотрСна ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅). Git, ΠΊΠ°ΠΊ ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ популярныС ΠΈ доступныС Π½Π° сСгодняшний дСнь систСмы VCS, распространяСтся бСсплатно ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ исходный ΠΊΠΎΠ΄. НСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΡƒΡŽ систСму контроля вСрсий Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½Π° называСтся, основныС Π΅Π΅ прСимущСства Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ.

  1. Полная история ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π·Π° Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄. Π­Ρ‚ΠΎ касаСтся всСх ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, внСсСнных ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹ΠΌ количСством людСй Π·Π° Π΄ΠΎΠ»Π³ΠΈΠ΅ Π³ΠΎΠ΄Ρ‹. ИзмСнСниСм считаСтся созданиС ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΡ… содСрТимого. Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ инструмСнты VCS ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ‚Π΅ΠΌ, насколько Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠ½ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ пСрСимСнования ΠΈ пСрСмСщСния Ρ„Π°ΠΉΠ»ΠΎΠ². Π’ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ свСдСния ΠΎΠ± Π°Π²Ρ‚ΠΎΡ€Π΅, Π΄Π°Ρ‚Π° ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ с описаниСм Ρ†Π΅Π»ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСнСния. НаличиС ΠΏΠΎΠ»Π½ΠΎΠΉ истории позволяСт Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌ вСрсиям, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π°Π½Π°Π»ΠΈΠ· основных ΠΏΡ€ΠΈΡ‡ΠΈΠ½ возникновСния ошибок ΠΈ ΡƒΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² старых вСрсиях ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Если Π½Π°Π΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм вСдСтся активная Ρ€Π°Π±ΠΎΡ‚Π°, Ρ‚ΠΎ «старой вСрсиСй» ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΏΠΎΡ‡Ρ‚ΠΈ вСсь ΠΊΠΎΠ΄ этого ПО.

  2. Π’Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ слияниС. Π­Ρ‚Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ участников ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹: ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ люди Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΈΠ· Π½Π΅Π΅ ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ нСсколькими нСзависимыми направлСниями. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Β«Π²Π΅Ρ‚ΠΎΠΊΒ» Π² инструмСнтах VCS позволяСт ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько нСзависимых Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΈΡ… слияниС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ измСнСния, внСсСнныС Π² ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΠ· Π²Π΅Ρ‚ΠΎΠΊ, Π½Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‚ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ. МногиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π²Π΅Ρ‚ΠΊΠΈ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ возмоТности, для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ€Π΅Π»ΠΈΠ·Π° Π»ΠΈΠ±ΠΎ ΠΈ для Ρ‚ΠΎΠ³ΠΎ, ΠΈ для Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. НаличиС мноТСства Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… процСссов позволяСт ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ подходящий для Π½ΠΈΡ… способ использования вСтвлСния ΠΈ слияния Π² VCS.

  3. ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, внСсСнноС Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, ΠΈ ΡΠ²ΡΠ·Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ с ПО для управлСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ отслСТивания ошибок, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Jira, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ измСнСнию ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ с описаниСм Ρ†Π΅Π»ΠΈ ΠΈ назначСния измСнСния ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π°Π½Π°Π»ΠΈΠ·Π΅ основных ΠΏΡ€ΠΈΡ‡ΠΈΠ½ возникновСния ошибок, Π½ΠΎ ΠΈ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°. Π˜ΡΡ‚ΠΎΡ€ΠΈΡ с коммСнтариями Π²ΠΎ врСмя чтСния ΠΊΠΎΠ΄Π° ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ этот ΠΊΠΎΠ΄ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ дСйствиС Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Благодаря этому Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Π½ΠΎΡΠΈΡ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ ΠΈ совмСстимыС измСнСния Π² соотвСтствии с долгосрочным ΠΏΠ»Π°Π½ΠΎΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ систСмы. Π­Ρ‚ΠΎ особСнно Π²Π°ΠΆΠ½ΠΎ для эффСктивной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с унаслСдованным ΠΊΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π΄Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΡ‡Π½Π΅Π΅ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ объСм дальнСйшСй Ρ€Π°Π±ΠΎΡ‚Ρ‹.

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

Π‘Ρ€Π΅Π΄ΠΈ мноТСства ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… систСм управлСния вСрсиями ΠΌΡ‹ сосрСдоточимся Π½Π° ΠΎΠ΄Π½ΠΎΠΉ: систСмС Git. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠ°Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для контроля вСрсий.

О систСмах контроля вСрсий / Π₯Π°Π±Ρ€

ВсСм ΠΏΡ€ΠΈΠ²Π΅Ρ‚! Π£ΠΆΠ΅ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π½Π΅Π΄Π΅Π»Π΅ Π² OTUS стартуСт Β«Π‘ΡƒΠΏΠ΅Ρ€-ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ ΠΏΠΎ использованию ΠΈ настройкС GITΒ». Π­Ρ‚ΠΎΠΌΡƒ я ΠΈ Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΎΡΠ²ΡΡ‚ΠΈΡ‚ΡŒ сСгодняшнюю ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ.


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


ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ ΠΎΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ способы ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΉ систСм контроля вСрсий.

БистСмы контроля вСрсий


БистСма контроля вСрсий являСтся ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго инструмСнтам, Π° инструмСнт ΠΏΡ€ΠΈΠ·Π²Π°Π½ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ класс Π·Π°Π΄Π°Ρ‡. Π˜Ρ‚Π°ΠΊ, систСма контроля вСрсий – это систСма, Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π°Ρ измСнСния

Π² Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡ€ Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΏΠΎΠ·ΠΆΠ΅ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ вСрсии. ΠœΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π³ΠΈΠ±ΠΊΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ, ΠΎΡ‚ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π΄ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… вСрсий Π² случаС нСобходимости. МоТно ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅ измСнСния Ρ„Π°ΠΉΠ»Π°, ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΡ‚ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ помСнял. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ систСмы контроля вСрсий ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для хранСния исходного ΠΊΠΎΠ΄Π°, Π½ΠΎ это Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. Они ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ для хранСния Ρ„Π°ΠΉΠ»ΠΎΠ² ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ любого Ρ‚ΠΈΠΏΠ°.

Как Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ вСрсии Ρ„Π°ΠΉΠ»ΠΎΠ²? Π›ΡŽΠ΄ΠΈ ΠΏΡ€ΠΈΡˆΠ»ΠΈ ΠΊ Ρ‚Π°ΠΊΠΎΠΌΡƒ инструмСнту ΠΊΠ°ΠΊ систСмы контроля вСрсий Π½Π΅ сразу, Π΄Π° ΠΈ ΠΎΠ½ΠΈ сами Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ старого Π΄ΠΎΠ±Ρ€ΠΎΠ³ΠΎ copy-paste, Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ…, Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ распрСдСлСнных систСм контроля вСрсий.

Copy-paste


Π˜Π·Π²Π΅ΡΡ‚Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊ Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎ ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ filename_{version}, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ создания ΠΈΠ»ΠΈ измСнСния.

Π”Π°Π½Π½Ρ‹ΠΉ способ являСтся ΠΎΡ‡Π΅Π½ΡŒ простым, Π½ΠΎ ΠΎΠ½ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ ошибкам: ΠΌΠΎΠΆΠ½ΠΎ случайно ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΡ‚ Ρ„Π°ΠΉΠ», ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ ΠΈΠ· Ρ‚ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ (вСдь ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ пСрСносятся Ρ„Π°ΠΉΠ»Ρ‹ Π² этой ΠΌΠΎΠ΄Π΅Π»ΠΈ).

Π›ΠΎΠΊΠ°Π»ΡŒΠ½Π°Ρ систСма контроля вСрсий


Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом Π² Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠΈ систСм контроля вСрсий Π±Ρ‹Π»ΠΎ созданиС Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… систСм контроля вСрсий. Они прСдставляли ΠΈΠ· сСбя ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, которая Ρ…Ρ€Π°Π½ΠΈΡ‚ записи ΠΎΠ±ΠΎ всСх измСнСниях Π² Ρ„Π°ΠΉΠ»Π°Ρ….

Одним ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Ρ‚Π°ΠΊΠΈΡ… систСм являСтся систСма контроля вСрсий RCS, которая Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Π² 1985 Π³ΠΎΠ΄Ρƒ (послСдний ΠΏΠ°Ρ‚Ρ‡ Π±Ρ‹Π» написан Π² 2015 Π³ΠΎΠ΄Ρƒ) ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ„Π°ΠΉΠ»Π°Ρ… (ΠΏΠ°Ρ‚Ρ‡ΠΈ), осущСствляя ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий. Набор этих ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ позволяСт Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ любоС состояниС Ρ„Π°ΠΉΠ»Π°. RCS поставляСтся с Linux’ΠΎΠΌ.

Π›ΠΎΠΊΠ°Π»ΡŒΠ½Π°Ρ систСма контроля вСрсий Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄ Π½Π΅ΠΉ Π·Π°Π΄Π°Ρ‡Ρƒ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π΅Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ являСтся основноС свойство β€” Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Она ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π΅Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ использования.

ЦСнтрализованная систСма контроля вСрсий


ЦСнтрализованная систСма контроля вСрсий ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ основной ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ локальной систСмы контроля вСрсий.

Для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΎΠΉ систСмы контроля вСрсий ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ СдинствСнный сСрвСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит всС вСрсии Ρ„Π°ΠΉΠ»ΠΎΠ². ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹, ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ этому сСрвСру, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΠΈΠ· этого Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… систСм контроля вСрсий Π½Π° протяТСнии ΠΌΠ½ΠΎΠ³ΠΈΡ… Π»Π΅Ρ‚ являлась стандартом. К Π½ΠΈΠΌ относятся CVS, Subversion, Perforce.

Π’Π°ΠΊΠΈΠΌΠΈ систСмами Π»Π΅Π³ΠΊΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ·-Π·Π° наличия СдинствСнного сСрвСра. Но ΠΏΡ€ΠΈ этом Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ сСрвСра ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ возникновСнию Π΅Π΄ΠΈΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΎΡ‚ΠΊΠ°Π·Π° Π² Π²ΠΈΠ΄Π΅ этого самого сСрвСра. Π’ случаС ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ этого сСрвСра Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π΅ смогут Π²Ρ‹ΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹. Π‘Π°ΠΌΡ‹ΠΌ Ρ…ΡƒΠ΄ΡˆΠΈΠΌ сцСнариСм являСтся физичСскоС ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ сСрвСра (ΠΈΠ»ΠΈ Π²Ρ‹Π»Π΅Ρ‚ ТСсткого диска), ΠΎΠ½ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠΎΡ‚Π΅Ρ€ΡŽ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ‹.

НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΄Π° Π½Π° SVN ΠΏΡ€ΠΎΡˆΠ»Π°, ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°Π±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Ρ…ΠΎΠ΄ β€” ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΎΡ‚ Git’Π° ΠΊ SVN’Ρƒ. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ SVN позволяСт ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ сСлСктивный Ρ‡Π΅ΠΊΠ°ΡƒΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Π²Ρ‹ΠΊΠ°Ρ‡ΠΊΡƒ лишь Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² с сСрвСра. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π°Π΅Ρ‚ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ использовании монорСпозиториях, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅.

РаспрСдСлСнная систСма контроля вСрсий


Для устранСния Π΅Π΄ΠΈΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΎΡ‚ΠΊΠ°Π·Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ распрСдСлСнныС систСмы контроля вСрсий. Они ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π²Ρ‹ΠΊΠ°Ρ‡Π°Π΅Ρ‚ сСбС вСсь Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ замСсто Π²Ρ‹ΠΊΠ°Ρ‡ΠΊΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΡ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Ρ„Π°ΠΉΠ»ΠΎΠ². Если ΡƒΠΌΡ€Π΅Ρ‚ любая копия рСпозитория, Ρ‚ΠΎ это Π½Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ восстановлСна с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° любого Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. КаТдая копия являСтся ΠΏΠΎΠ»Π½Ρ‹ΠΌ бэкапом Π΄Π°Π½Π½Ρ‹Ρ….

ВсС ΠΊΠΎΠΏΠΈΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ€Π°Π²Π½ΠΎΠΏΡ€Π°Π²Π½Ρ‹ΠΌ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ собой. ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΎΡ‡Π΅Π½ΡŒ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ (Π΄Π° ΠΈ являСтся) Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ Π²ΠΈΠ΄Π° master-master.

К Π΄Π°Π½Π½ΠΎΠΌΡƒ Π²ΠΈΠ΄Ρƒ систСм контроля вСрсий относятся Mercurial, Bazaar, Darcs ΠΈ Git. ПослСдняя систСма контроля вСрсий ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ рассмотрСна Π½Π°ΠΌΠΈ Π΄Π°Π»Π΅Π΅ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ.

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ Git


Π’ 2005 Π³ΠΎΠ΄Ρƒ компания, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π°Ρ систСму контроля вСрсий BitKeeper, ΠΏΠΎΡ€Π²Π°Π»Π° ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ с сообщСством Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ядра Linux. ПослС этого сообщСство приняло Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ своСй собствСнной систСмы контроля вСрсий. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ цСнностями Π½ΠΎΠ²ΠΎΠΉ систСмы стали: полная дСцСнтрализация, ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, простая Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°, Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅


ΠœΡ‹ рассмотрСли способы ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ систСм контроля вСрсий, обсудили Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ поставлСнных ΠΏΠ΅Ρ€Π΅Π΄ этими систСмами Π·Π°Π΄Π°Ρ‡, ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ ΠΎ прСимущСствах ΠΈ нСдостатках ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ…, познакомились с историСй систСмы контроля вСрсий Git.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий | Atlassian Git Tutorial

Как ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ DevOps ΠΏΡ€ΠΎΡ†Π²Π΅Ρ‚Π°Ρ‚ΡŒ

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий, Ρ‚Π°ΠΊΠΆΠ΅ извСстный ΠΊΠ°ΠΊ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий, прСдставляСт собой ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ отслСТивания ΠΈ управлСния измСнСниями Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅. БистСмы контроля вСрсий β€” это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ инструмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ измСнСниями Π² исходном ΠΊΠΎΠ΄Π΅ с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. По ΠΌΠ΅Ρ€Π΅ ускорСния срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ систСмы контроля вСрсий ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ПО Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ быстрСС ΠΈ эффСктивнСС. Они особСнно ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ для ΠΊΠΎΠΌΠ°Π½Π΄ DevOps, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΈΠΌ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ число ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹Ρ… Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΉ.

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

ΠŸΠΎΡ‡Ρ‚ΠΈ для всСх ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² исходный ΠΊΠΎΠ΄ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ драгоцСнностям Π² ΠΊΠΎΡ€ΠΎΠ½Π΅ β€” Π΄Ρ€Π°Π³ΠΎΡ†Π΅Π½Π½ΠΎΠΌΡƒ Π°ΠΊΡ‚ΠΈΠ²Ρƒ, Ρ†Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Ρ‰ΠΈΡ‰Π°Ρ‚ΡŒ. Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния исходный ΠΊΠΎΠ΄ являСтся Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ бСсцСнных Π·Π½Π°Π½ΠΈΠΉ ΠΈ понимания ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½ΠΎΠΉ области, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ собрали ΠΈ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π»ΠΈ благодаря Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ усилиям. ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ исходный ΠΊΠΎΠ΄ ΠΊΠ°ΠΊ ΠΎΡ‚ катастрофы, Ρ‚Π°ΠΊ ΠΈ ΠΎΡ‚ случайной Π΄Π΅Π³Ρ€Π°Π΄Π°Ρ†ΠΈΠΈ ΠΈΠ·-Π·Π° чСловСчСской ошибки ΠΈ Π½Π΅ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Π½Π½Ρ‹Ρ… послСдствий.

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

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ вСрсиями ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, отслСТивая ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ участника ΠΈ помогая ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ Π² ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅. ИзмСнСния, внСсСнныС Π² ΠΎΠ΄Π½Ρƒ Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСсовмСстимы с измСнСниями, внСсСнными Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΌ Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя. Π­Ρ‚Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π° ΠΈ Ρ€Π΅ΡˆΠ΅Π½Π° упорядочСнным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π½Π΅ блокируя Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ части ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²ΠΎ всСй Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния любоС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ появлСнию Π½ΠΎΠ²Ρ‹Ρ… ошибок, ΠΈ Π½ΠΎΠ²ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ нСльзя Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ, ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ протСстировано. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, тСстированиС ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ΡΡ вмСстС, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ‚ΠΎΠ²Π° новая вСрсия.

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

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ Ρ„ΠΎΡ€ΠΌΡƒ контроля вСрсий, часто ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ Π½Π΅Π·Π½Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ сдСланныС измСнСния доступны ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ, ΠΈΠ»ΠΈ созданиС нСсовмСстимых ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя нСсвязанными частями Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Ρ‚Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°ΡΠΏΡƒΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Если Π²Ρ‹ ΡΠ²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ использовал ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ вСрсии Π² свои Ρ„Π°ΠΉΠ»Ρ‹, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, с Ρ‚Π°ΠΊΠΈΠΌΠΈ суффиксами, ΠΊΠ°ΠΊ Β«ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Π°ΡΒ» ΠΈΠ»ΠΈ «послСдняя», Π° Π·Π°Ρ‚Π΅ΠΌ Π²Π°ΠΌ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π΅Π»ΠΎ с Π½ΠΎΠ²ΠΎΠΉ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ вСрсиСй. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π±Π»ΠΎΠΊΠΈ ΠΊΠΎΠ΄Π°, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½Π΅ удаляя ΠΊΠΎΠ΄, опасаясь, Ρ‡Ρ‚ΠΎ это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использовано ΠΏΠΎΠ·ΠΆΠ΅. ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий являСтся Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ ΠΈΠ· этих ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ.

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

ИспользованиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для контроля вСрсий являСтся ΠΏΠ΅Ρ€Π΅Π΄ΠΎΠ²ΠΎΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ для Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ DevOps. ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ быстрСС ΠΈ позволяСт Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ΡΡ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ большС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

БистСмы контроля вСрсий (VCS) ΠΏΡ€Π΅Ρ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ Π·Π° послСдниС нСсколько дСсятилСтий, ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ… Π»ΡƒΡ‡ΡˆΠ΅, Ρ‡Π΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. VCS ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ инструмСнтами SCM (ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ исходным ΠΊΠΎΠ΄ΠΎΠΌ) ΠΈΠ»ΠΈ RCS (систСма контроля вСрсий). Один ΠΈΠ· самых популярных инструмСнтов VCS, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… сСгодня, называСтся Git. Π“ΠΈΡ‚ это Distributed VCS, катСгория, извСстная ΠΊΠ°ΠΊ DVCS, ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом ΠΏΠΎΠ·ΠΆΠ΅. Как ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· самых популярных систСм контроля вСрсий, доступных сСгодня, Git являСтся бСсплатным ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ. НСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈΠ»ΠΈ какая систСма ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, основныС прСимущСства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ ΠΎΡ‚ контроля вСрсий, Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ.

  1. Полная долгосрочная история ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, сдСланноС ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ людьми Π½Π° протяТСнии ΠΌΠ½ΠΎΠ³ΠΈΡ… Π»Π΅Ρ‚. ИзмСнСния Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ созданиС ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΡ… содСрТимого. Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ инструмСнты контроля вСрсий Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ‚Π΅ΠΌ, насколько Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠ½ΠΈ ΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ с ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ². Π­Ρ‚Π° история Π΄ΠΎΠ»ΠΆΠ½Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€Π°, Π΄Π°Ρ‚Ρƒ ΠΈ ΠΏΠΈΡΡŒΠΌΠ΅Π½Π½Ρ‹Π΅ примСчания ΠΎ Ρ†Π΅Π»ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСнСния. НаличиС ΠΏΠΎΠ»Π½ΠΎΠΉ истории позволяСт Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌ вСрсиям, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π² Π°Π½Π°Π»ΠΈΠ·Π΅ основных ΠΏΡ€ΠΈΡ‡ΠΈΠ½ ошибок, ΠΈ это ΠΊΡ€Π°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΡ€ΠΈ нСобходимости ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² Π±ΠΎΠ»Π΅Π΅ старых вСрсиях ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Если Π½Π°Π΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм вСдСтся активная Ρ€Π°Π±ΠΎΡ‚Π°, ΠΏΠΎΡ‡Ρ‚ΠΈ всС ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ «старой вСрсиСй» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.

  2. Π’Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ слияниС. ΠžΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π° Ρ‡Π»Π΅Π½ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ β€” это Π½Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, Π½ΠΎ Π΄Π°ΠΆΠ΅ люди, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Π²Ρ‹Π³ΠΎΠ΄Ρƒ ΠΈΠ· возмоТности Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ нСзависимыми ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Β«Π²Π΅Ρ‚Π²ΠΈΒ» Π² инструмСнтах VCS обСспСчиваСт Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ эту Ρ€Π°Π±ΠΎΡ‚Ρƒ вмСстС, позволяя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ измСнСния Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅Ρ‚Π²ΠΈ Π½Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‚. МногиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ вСтвлСния для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, вСтвлСния для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ выпуска, ΠΈΠ»ΠΈ ΠΈ Ρ‚ΠΎΠ³ΠΎ, ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. БущСствуСт мноТСство Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… процСссов, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° Ρ€Π΅ΡˆΠ°ΡŽΡ‚, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ возмоТности вСтвлСния ΠΈ слияния Π² VCS.

  3. ΠŸΡ€ΠΎΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, внСсСнноС Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ для управлСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ отслСТивания ошибок, Ρ‚Π°ΠΊΠΎΠΌΡƒ ΠΊΠ°ΠΊ Jira, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π°Π½Π½ΠΎΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ сообщСниСм, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΌ Ρ†Π΅Π»ΡŒ ΠΈ Π½Π°ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ измСнСния, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π°Π½Π°Π»ΠΈΠ·Π΅ ΠΏΠ΅Ρ€Π²ΠΎΠΏΡ€ΠΈΡ‡ΠΈΠ½. ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ судСбныС экспСртизы. ИмСя ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ Π°Π½Π½ΠΎΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΊΠΎΠ΄Π°, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅ ΠΊΠΎΠ΄ ΠΈ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½ Ρ‚Π°ΠΊ спроСктирован, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π²Π½ΠΎΡΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΈ Π³Π°Ρ€ΠΌΠΎΠ½ΠΈΡ‡Π½Ρ‹Π΅ измСнСния, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π½Π°ΠΌΠ΅Ρ‡Π΅Π½Π½ΠΎΠΌΡƒ долгосрочному Π΄ΠΈΠ·Π°ΠΉΠ½Ρƒ. систСмы. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ особСнно Π²Π°ΠΆΠ½ΠΎ для эффСктивной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с унаслСдованным ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для прСдоставлСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ возмоТности ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ Π±ΡƒΠ΄ΡƒΡ‰ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ с любой Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ.

Π₯отя ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π±Π΅Π· использования контроля вСрсий, это ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠΌΡƒ риску, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ рСкомСндуСтся ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, вопрос Π½Π΅ Π² Ρ‚ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий, Π° Π² Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΡƒΡŽ систСму контроля вСрсий ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Π•ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ², Π½ΠΎ здСсь ΠΌΡ‹ сосрСдоточимся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ, Git. Π£Π·Π½Π°ΠΉΡ‚Π΅ большС ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠ°Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для контроля вСрсий.

БистСмы контроля вСрсий β€” GeeksforGeeks

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ «систСма контроля вСрсий»? Β 

БистСмы контроля вСрсий β€” это катСгория ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… инструмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ измСнСния, внСсСнныС Π² Ρ„Π°ΠΉΠ»Ρ‹, ΠΏΡƒΡ‚Π΅ΠΌ отслСТивания ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, внСсСнных Π² ΠΊΠΎΠ΄.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ систСма контроля вСрсий Ρ‚Π°ΠΊ Π²Π°ΠΆΠ½Π°?

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ разрабатываСтся Π² сотрудничСствС Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Ρ€Π°Π·Π½Ρ‹Ρ… мСстах, ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… вносит свой Π²ΠΊΠ»Π°Π΄ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ/Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ внСсти свой Π²ΠΊΠ»Π°Π΄ Π² ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, ΠΎΠ½ΠΈ внСсли измСнСния Π² исходный ΠΊΠΎΠ΄ (добавляя ΠΈΠ»ΠΈ удаляя). БистСма контроля вСрсий β€” это своСго Ρ€ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² эффСктивно ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ (ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ) всСми измСнСниями, внСсСнными Π² исходный ΠΊΠΎΠ΄, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΡ‚ΠΎ внСс ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ измСнСния Π±Ρ‹Π»ΠΈ внСсСны. ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ Π²Π΅Ρ‚Π²ΡŒ создаСтся для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ участника, внСсшСго измСнСния, ΠΈ измСнСния Π½Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ с исходным исходным ΠΊΠΎΠ΄ΠΎΠΌ, Ссли Ρ‚ΠΎΠ»ΡŒΠΊΠΎ всС ΠΎΠ½ΠΈ Π½Π΅ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ измСнСния ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Ρ‹ Π·Π΅Π»Π΅Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ, ΠΎΠ½ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ с основным исходным ΠΊΠΎΠ΄ΠΎΠΌ. Он Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сохраняСт порядок исходного ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, дСлая процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ»Π°Π²Π½Ρ‹ΠΌ.

Π’ основном систСма контроля вСрсий отслСТиваСт измСнСния, внСсСнныС Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ снимок ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ссли ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² добавляСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π° обновлСнная вСрсия Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, систСма контроля вСрсий отслСТиваСт Π½Π°ΡˆΡƒ Ρ€Π°Π±ΠΎΡ‚Ρƒ, поэтому с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ систСмы контроля вСрсий ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ измСнСния ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ. прСдыдущая вСрсия.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° систСмы контроля вСрсий: 9

  • ΠŸΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π·Π° счСт эффСктивного сотрудничСства МСлкая ΠΌΠ΅Π»ΠΎΡ‡ΡŒ,
  • Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ ΠΈΠ»ΠΈ участники ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΌΠΎΠ³ΡƒΡ‚ Π²Π½ΠΎΡΠΈΡ‚ΡŒ свой Π²ΠΊΠ»Π°Π΄ ΠΈΠ· любого мСста, нСзависимо ΠΎΡ‚ гСографичСского полоТСния, Ρ‡Π΅Ρ€Π΅Π· этот VCS,
  • Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ участника ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° поддСрТиваСтся ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ рабочая копия, которая Π½Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ΡΡ с основным Ρ„Π°ΠΉΠ»ΠΎΠΌ, Ссли рабочая копия Π½Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π°. Π‘Π°ΠΌΡ‹ΠΉ популярный ΠΏΡ€ΠΈΠΌΠ΅Ρ€ β€” Git, Helix core, Microsoft TFS,
  • ΠŸΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π² восстановлСнии Π² случаС ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π°Π²Π°Ρ€ΠΈΠΈ ΠΈΠ»ΠΈ Π½Π΅ΡˆΡ‚Π°Ρ‚Π½ΠΎΠΉ ситуации,
  • Π˜Π½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ нас ΠΎ Ρ‚ΠΎΠΌ, ΠΊΡ‚ΠΎ, Ρ‡Ρ‚ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹Π»ΠΈ внСсСны измСнСния.
  • ИспользованиС систСмы контроля вСрсий: Β 

    • Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ: Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Он содСрТит всС ΠΏΡ€Π°Π²ΠΊΠΈ ΠΈ историчСскиС вСрсии (снимки) ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.
    • Копия Ρ€Π°Π±ΠΎΡ‚Ρ‹ (ΠΈΠ½ΠΎΠ³Π΄Π° называСмая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ): Π­Ρ‚ΠΎ личная копия всСх Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эту копию, Π½Π΅ влияя Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ…, ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои измСнСния Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚Π΅ Π²Π½ΠΎΡΠΈΡ‚ΡŒ свои измСнСния.
    • Π Π°Π±ΠΎΡ‚Π° Π² Π³Ρ€ΡƒΠΏΠΏΠ΅: ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, Π³Π΄Π΅ вас попросили ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΆΠΈΠ²Ρ‹ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ. Π’Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ основной ΠΊΠΎΠ΄, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ находится Π² производствС, ΠΈ любоС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ нСудобства для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅, поэтому Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‡Π°Ρ‚ΡŒ со своСй ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ΠΈ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… измСнСния. ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ вСрсий ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Π°ΠΌ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ запросы Π² основной Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π±Π΅Π· внСсСния ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности, Π½Π΅ вводя ΠΈΡ… Π² дСйствиС, ΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ, просто ΠΈΠ·Π²Π»Π΅ΠΊΠΈΡ‚Π΅ измСнСния ΠΈ внСситС измСнСния, протСстируйтС ΠΈΡ… ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ.

    Π’ΠΈΠΏΡ‹ систСм управлСния вСрсиями:

    • Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ систСмы управлСния вСрсиСй
    • Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ систСмы управлСния вСрсиСй
    • РаспрСдСлСнныС систСмы управлСния вСрсиСй

    Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ систСмы управлСния вСрсиями: Π­Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых простых Ρ„ΠΎΡ€ΠΌ ΠΈ Ρ„ΠΎΡ€ΠΌ Simple ΠΈ Simple ΠΈ Simple And And And And And And And And And And Form ΠΈ Simple And And And And And And Form ΠΈ Simple And ΠΈ Form ΠΈ Simply And And And And And And Form ΠΈ Simpl ΠΈΠΌΠ΅Π΅Ρ‚ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ всС измСнСния Π² Ρ„Π°ΠΉΠ»Π°Ρ… хранятся ΠΏΠΎΠ΄ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ вСрсий. RCS β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых распространСнных инструмСнтов VCS. Он Ρ…Ρ€Π°Π½ΠΈΡ‚ Π½Π°Π±ΠΎΡ€Ρ‹ исправлСний (различия ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ) Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Π½Π° дискС. Добавляя всС исправлСния, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Ρ‚Π΅ΠΌ Π²ΠΎΡΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚ΠΎ, ΠΊΠ°ΠΊ выглядСл любой Ρ„Π°ΠΉΠ» Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

    Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ систСмы контроля вСрсий: Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ систСмы контроля вСрсий содСрТат Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π² глобальном ΠΌΠ°ΡΡˆΡ‚Π°Π±Π΅, ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои измСнСния Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ваши измСнСния ΠΏΡƒΡ‚Π΅ΠΌ обновлСния.

    Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ваши измСнСния Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ для Π΄Ρ€ΡƒΠ³ΠΈΡ…, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ Π΄Π²Π΅ Π²Π΅Ρ‰ΠΈ:Β Β 

    • Π’Ρ‹ фиксируСтС
    • Они ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚

    ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ стСпСни Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. Π­Ρ‚ΠΎ позволяСт администраторам Ρ‚ΠΎΡ‡Π½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΡ‚ΠΎ ΠΈ Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ.

    Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ нСдостатков , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ DVS. НаиболСС ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ являСтся Сдиная Ρ‚ΠΎΡ‡ΠΊΠ° ΠΎΡ‚ΠΊΠ°Π·Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ прСдставляСт собой Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Ссли ΠΎΠ½ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΈΠ· строя Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ этого ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π°, совмСстная Ρ€Π°Π±ΠΎΡ‚Π° ΠΈ сохранСниС вСрсий ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹. Π§Ρ‚ΠΎ, Ссли ТСсткий диск Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΉ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½, Π° Π½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ‹Π΅ ΠΊΠΎΠΏΠΈΠΈ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ сохранСны? Π’Ρ‹ тСряСтС Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ всС.

    РаспрСдСлСнныС систСмы контроля вСрсий: РаспрСдСлСнныС систСмы контроля вСрсий содСрТат нСсколько Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π². Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π΅ΡΡ‚ΡŒ собствСнный Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈ рабочая копия. ΠŸΡ€ΠΎΡΡ‚Π°Ρ фиксация Π²Π°ΡˆΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅ даст Π΄Ρ€ΡƒΠ³ΠΈΠΌ доступ ΠΊ вашим измСнСниям. Π­Ρ‚ΠΎ связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Ρ€Π°ΠΆΠ°Ρ‚ΡŒ эти измСнСния Π² вашСм локальном Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, ΠΈ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΡ… Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ Π² Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ обновляСтС, Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ Ρ‡ΡƒΠΆΠΈΠ΅ измСнСния, Ссли Π²Ρ‹ сначала Π½Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ»ΠΈ эти измСнСния Π² свой Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ.

    Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ваши измСнСния Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ для Π΄Ρ€ΡƒΠ³ΠΈΡ…, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ 4 Π²Π΅Ρ‰ΠΈ:Β Β 

    • Π’Ρ‹ фиксируСтС
    • Π’Ρ‹ отправляСтС
    • Они ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡŽΡ‚
    • Они ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚

    Π‘Π°ΠΌΡ‹ΠΌΠΈ популярными распрСдСлСнными систСмами управлСния вСрсиями ΡΠ²Π»ΡΡŽΡ‚ΡΡ Git ΠΈ Mercurial. Они ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π½Π°ΠΌ ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π΅Π΄ΠΈΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΎΡ‚ΠΊΠ°Π·Π°.

    НазначСниС контроля вСрсий: Β 

    • НСсколько Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.

      This entry was posted in ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΠ΅