Version Control System. (VCS) Versiya Kontrol Sistemi. (VKS)

Ayti Qaqaş
2 min readMar 17, 2021

1. VCS CONCEPT. VKS Konsepti

Versiyanın kontrolunun ilkin variantları belə idi ki, çox adam proyektlərini fərqli dirrektoriyalarda saxlayırdı. Yəni eyni proyekt müxtəlif adnan saxlanılır. Faylların yaradılma tarixinə baxıb bilmək olurdu hansı yeni, hansı köhnə fayllardır. Hər hansı dəyişiklik bəyənilmədisə servərə köhnə faylı yenidən yükləmək olardı.

Eyni proyektin kopyalanması

Digər variant folderi şəbəkədə paylaşmaq(network share) idi. Yəni siz proyekti şəbəkənizdə paylaşırsız ki, komandanızın üzvləri və siz eyni faylları istifadə edə biləsiz. Əsas problem onda idi ki, faylı eyni zamanda əgər istifadə edirlərsə ( yəni kod yazırlar), sonda faylda yalnız son yaddaşda saxlayanın məlumatı qalacaq. Üçüncü istifadə olunan variant elə ikinci variantla oxşardır yəni siz cloud-dan istifadə etsəniz belə, eyni çətinliklərlə üzləşəcəksiz. Çətinliklərdən çox danışmaq olar, gəlin fikirləşək versiya kontrol sistemi nələri əhatə etməlidir?

VCS məqsədləri.

1. BACKUP AND RESTORE - ARXIVLƏŞDİRMƏ VƏ BƏRPASI
Proyektimiz backup olduğu halda, proyekt rahat bərpa oluna bilir. Təsəvvür edin proyekt əlavə olaraq hardasa saxlamışıq və əgər serverdən silinsə vəya yeni developer onu özünə köçürtməy istəsə həmin backupdan istifadə edə bilər.
2. SYNCHRONIZATION - SİNXRONİZASİYA
Sinxronizasiya bir neçə developerin eyni zamanda eyni proyektin üzərində işləmək imkanını yaradır. Yəni bir developer “index.php” faylında dəyişiklik etsə və eyni faylda eyni zamanda dəyişiklik olsa belə bunu rahat idarə edə bilirik.
3. UNDO - GERİ QAYTARMA
Geri qaytarma imkanı çox önəmli və lazımlı bir funksiyadır. Əlbətdə biz dəyişiklikləri geri qaytarmaq imkanının olmasını istəyirik. Misal üçün hər hansısa dəyişiklik etdiksə və sonra qərar verdik ki, artıq bu lazım deyil. O zaman tez bir zamanda bütün etdiyimiz dəyişikliklər geri qaytara bilirik.
4. TRACK CHANGES AND OWNERSHIP DƏYİŞİKLİKLƏRİN İZLƏNİLMƏSİ VƏ SAHİBLİK
Track Changes o deməkdir ki, biz izləyə bilirik kim hansı kodu yazıb, hansı feature( funksionallıq ) üzərində çalışır.
5. SANDBOXING
Bu ayrıca izolasiya olunmuş bir sistemdi harada biz nəsə yeni bir şey yoxlaya bilərik. Hansından ki bizə hələ əmin deyilik və sadəcə eksperimentlər edirik.
6. BRANCHING BUDAĞLAMA
Budağların yaradılma və bitişdirmə imkanı olması vacib amillərdən biridir. Daha ətraflı budaqlar haqqında yazacam aşağıda.
Ümumiyyətlə VCS müxtəlif kateqoriyalara bölmək olar. İlk kriteriyanı işləmə mexanizminə görə götürə bilərik:
1. LOCK-MODIFY-UNLOCK
2. COPY-MODIFY-MERGE

Strategiyalar

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Ayti Qaqaş
Ayti Qaqaş

Written by Ayti Qaqaş

Hər vaxtınız xeyir. Həvəskar developer tərəfindən yaradıldım. Bizə dəstək olmaq istəyənlər: https://kofe.al/@aytiqaqash . Sayımız: https://aytiqaqash.dev/

No responses yet