Git

Birinci kommit

Qovluğu repozitori edirik

git init əmrinin köməyilə qovluğu repozitori etmək olur. Repository ingiliscədən tərcümədə saxlanılan yer mənasını bildirir.

Git-in layihədəki dəyişiklikləri izləməyə başlaması üçün həmin layihənin fayllarından ibarət qovluğu Git repozitori etmək lazımdır. Bunun üçün əmr sətrində həmin qovluğa keçid edib git init əmrini icra etmək lazımdır.

Məsələn, D:/ diskində first-project qovluğu yaradırıq. Onu Git repozitori etmək üçün aşağıdakıları ardıcıllıqla yerinə yetiririk:

  • Git Bash proqramını açırıq
  • cd əmrinin köməyilə bir qədər əvvəl D:/ diskində yaratdığımız first-project qovluğuna daxil oluruq
  • git init əmrini yazıb Enter düyməsinə sıxırıq
cd D:/first-project # lazımi qovluğa keçid edirik

git init # repozitori yaradırıq

git init əmri Initialized empty Git repository in D:/first-project/.git/ adlı məlumat göstərəcək. Bu onu bildirir ki, D:/first-project/.git/ ünvanında boş Git repozitori yaradılıb. Git bütün xidməti informasiyanı .git qovluğunda saxlayır.

Git repozitori yaradırıq

first-project qovluğunda yaradılmış .git gizli qovluqdur. Windows əməliyyat sistemlərinin idarəetməsi altında işləyən kompüterlərdə başlanğıc ayar kimi gizli qovluqları görmək mümkün deyil. Git Bash proqramında ls -la əmrinin köməyilə .git adlı gizli qovluğu görə bilərik:

ls -la

.git adlı gizli qovluğa baxırıq

Qovluğu git repozitoridən çıxardırıq

Əgər səhvən başqa qovluğu Git repozitori etmisinizsə, onu Git repozitoridən çıxartmaq mümkündür. Bunun üçün .git adlı gizli qovluğu silmək lazımdır:

cd <repozitori qovluğunun ünvanı> # qovluğa keçid edirik

$ rm -rf .git # .git adlı gizli qovluğu silirik

Ehtiyatlı olun: dəyişikliklərin tarixçəsi .git adlı gizli qovluqda saxlanılır. Əgər siz onu silsəniz, o zaman layihənin bütün tarixçəsi silinəcək və geri qaytarmaq mümkün olmayacaq.

Repozitorinin cari vəziyyətini yoxlayırıq

first-project repozitorisini yaratdıqdan sonra git status əmrini icra edirik. Bu əmr repozitorinin cari vəziyyətini göstərir:

git status

git status əmri aşağıdakıları göstərəcək:

  • cari budağın adını: On branch master və ya On branch main
  • repozitoridə hələ kommit olmadığını: No commits yet
  • kommit etmək üçün əvvəlcə fayl yaratmaq lazımdır - nothing to commit (create/copy files and use "git add" to track)

repozitorinin cari vəziyyəti

Repozitoriyə fayl əlavə edirik

Repozitoriyə iki fayl əlavə edək. Məsələn, todo.txtreadme.txt fayllarını. Bu məqsədlə Git Bash proqramında first-project qovluğuna daxil olub touch əmrininin köməyilə hər iki faylı yaradırıq. ls əmrinin köməyilə faylların yaradılmasına əmin oluruq:

touch todo.txt # todo.txt faylını yaradırıq

touch readme.txt # readme.txt faylını yaradırıq

ls # first-project qovluğunun tərkibinə baxırıq

touch əmrinin köməyilə fayllar yaradırıq

git status əmrinin köməyilə repozitorinin cari vəziyyətini yoxlayırıq:

git status

Yeri gəlmişkən qeyd edim ki, clear əmrinin köməyilə Git Bash proqramında əmr sətrinin ekranını təmizləmək mümkündür.

Git first-project qovluğunda untracked files (ingilis dilindən tərcümədə izlənilməyən fayllar deməkdir) olduğu barədə məlumat verir. Git hələ ki todo.txtreadme.txt fayllarını izləmir.

untracked files

Untracked vəziyyəti onu bildirir ki, Git hələ faylın versiyaları haqda məlumatı özündə saxlamır və fayla edilmiş dəyişiklikləri izləyə bilmir.

Hazırda first-project qovluğunda iki fayl vardır. Hər iki faylın vəziyyətini izləmək üçün git add --all əmrindən istifadə edə bilərik. Bu əmr repozitoridəki bütün faylları kommit üçün hazırlamağa imkan verir. Bir qədər sonra kommit haqda daha ətraflı məlumat veriləcək.

git add --all # repozitoridəki bütün faylları kommit üçün hazırlayırıq

git status əmrinin köməyilə repozitorinin cari vəziyyətini yenidən yoxlayırıq:

repozitoridəki fayllar izlənilir

Alındı! Fayllar indi izlənilir və ona görə əmr sətrində yaşıl rəngdə göstəriliblər. Lakin hələ ki fayllar repozitoriyə əlavə edilməyib, çünki git add əmri yalnız faylın cari kontentini yadda saxlayır.

git add əmri faylların kontentini repozitoridə saxlamır. Faylların vəziyyətinin saxlanılması və ya qeydə alınması kommit adlanır. Kommit etmək faylın cari vəziyyətinin saxlanılması deməkdir.

Məsələn, git add əmrini onlayn mağazada səbətə məhsul əlavə etməklə, kommiti isə sifariş verib ödəniş etməklə müqayisə edə bilərik.

Əgər indi first-project qovluğundakı "yaşıl" fayllardan hər hansı birini redaktə etsəniz, o, modified (dəyişdirilmiş) vəziyyətinə keçəcək və həm "yaşıl", həm də "qırmızı" siyahıda yer alacaq.

Məsələn, todo.txt faylını istənilən mətn redaktorunda açıb yazın: 1. Git-də bir neçə dərs öyrənmək

mətn faylına redaktorda dəyişiklik edirik

Dəyişikliyi yadda saxlayıb Git Bash-da git status əmrini icra edirik:

todo.txt faylı həm "yaşıl", həm də "qırmızı" siyahıda vardır:

  • todo.txt faylının boş versiyası yaşıl rənglə qeyd olunub
  • 1. Git-də bir neçə dərs öyrənmək mətnindən ibarət versiya isə qırmızı rənglə qeyd olunub

Sözügedən faylın yeni vəziyyətini yadda saxlamaq üçün git add əmrini icra etmək lazımdır. Bir faylı kommit üçün hazırladıqda git add əmrindən istifadə edə bilərik:

git add todo.txt

git status əmrinin köməyilə repozitorinin cari vəziyyətini növbəti dəfə yoxlayırıq:

İndi todo.txt faylı yenidən onu kommit etmək üçün hazırdır!

İlk kommitimizi edirik

Kommit Git-də (həmçinin digər versiya nəzarət sistemlərində) əsas obyektlərdən biridir. O, repozitoridə dəyişikliklərin yadda saxlanılmasına və lazım olduqda həmin dəyişikliyə geri qayıtmağa imkan verir. Bu, sanki repozitoridə Ctrl+Z əməliyyatına bənzəyir.

Kommit etmək üçün git commit -m əmrindən istifadə edilir. -m (message) parametri kommitə mesaj yazmağa imkan verir.

Kommit üçün yazılmış mesaj fayla edilmiş dəyişikliyi izah edir. Mesaj -m parametrindən sonra dırnaq içərisində yazılır. Mesaj çoxsaylı kommit arasında naviqasiyanı asanlaşdırır.

İndi isə Git Bash proqramında first-project qovluğuna daxil olub birinci kommit edirik:

git commit "My first commit!"

Enter düyməsinə sıxdıqdan sonra first-project qovluğundakı faylların cari versiyaları repozitoridə "My first commit!" mesajı adı altında saxlanılacaq:

birinci kommit

git commit əmrinin icrasından sonra kommit haqda məlumat göstərilir:

[main (root-commit) d3193c9] o deməkdir ki:

  • kommit main budağına aiddir
  • root-commit - birinci kommit, sonrakı kommitlərdə bu yazı olmayacaq
  • d3193c9 - kommitin qısa identifikatoru (sonra bu barədə ətraflı məlumat veriləcək)

2 files changed, 1 insertion(+) o deməkdir:

  • 2 fayla dəyişiklik edilib (readme.txttodo.txt)
  • 1. Git-də bir neçə dərs öyrənmək sətri əlavə edilib

create mode 100644 readme.txt - bu, Git repozitoriyə əlavə edilmiş yeni fayllar haqda daha ətraflı məlumat verir:

  • create bildirir ki, fayl yaradılıb. Əgər fayl silinsə, onda create əvəzinə delete olacaq
  • mode 100644 bildirir ki, bu, sadə fayldır

Bir daha git addgit commit arasındakı fərq haqqında

İlk əvvəl git add əmrinin köməyilə Git-ə saxlanılacaq fayllar və onların versiyası haqda məlumat verilir. Sonra git commit əmrinin köməyilə həmin fayllar repozitoridə saxlanılır.

Məsələn, fotoaparatla dostlarınızın şəklini çəkərkən əvvəlcə onlardan bir yerə toplaşmalarını xahiş edirsiniz. Bu, git add əmridir. Hər kəs gəlib öz yerini tutur, saçına əl gəzdirir və gülümsəyir. Bundan sonra fotoaparatın düyməsinə sıxıb şəkli çəkirsiniz. Bu isə git commit əmridir. Çəkilmiş şəkil məhz kommitdir.

git add və git commit arasındakı fərq

Yeri gəlmişkən, "My first commit!" - mesajı bu başlıq altında saxlamaq yaxşı seçim deyil. Kommit üçün elə başlıq seçilməlidir ki, hansı dəyişikliklərin edildiyi başadüşülən olsun. Məsələn: todo.txt faylına vacib tapşırıq əlavə edildi, Dövr operatorundakı səhv düzəldildi və sairə.

0
Çalışmalara (1) giriş əldə etmək üçün hesabınıza daxil olun.

Şərh yazmaq üçün hesabınıza daxil olun.