-
1. Başlanğıc
- 1.1 Versiyaya Nəzarət Haqqında
- 1.2 Git’in Qısa Hekayəsi
- 1.3 Git Nədir?
- 1.4 Əmr Sətiri
- 1.5 Git’i Quraşdırmaq
- 1.6 İlk Dəfə Git Quraşdırması
- 1.7 Kömək Almaq
- 1.8 Qısa Məzmun
-
2. Git’in Əsasları
-
3. Git’də Branch
- 3.1 Nutshell’də Branch’lar
- 3.2 Sadə Branching və Birləşdirmə
- 3.3 Branch İdarəedilməsi
- 3.4 Branching İş Axınları
- 3.5 Uzaq Branch’lar
- 3.6 Rebasing
- 3.7 Qısa Məzmun
-
4. Server’də Git
- 4.1 Protokollar
- 4.2 Serverdə Git Əldə Etmək
- 4.3 Sizin öz SSH Public Key’nizi yaratmaq
- 4.4 Server qurmaq
- 4.5 Git Daemon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Üçüncü Tərəf Seçimləri
- 4.10 Qısa Məzmun
-
5. Paylanmış Git
-
6. GitHub
-
7. Git Alətləri
- 7.1 Reviziya Seçimi
- 7.2 Interaktiv Səhnələşdirmə
- 7.3 Stashing və Təmizləmə
- 7.4 İşinizin İmzalanması
- 7.5 Axtarış
- 7.6 Tarixi Yenidən Yazmaq
- 7.7 Reset Demystified
- 7.8 İnkişaf etmiş Birləşmə
- 7.9 Rerere
- 7.10 Git ilə Debugging
- 7.11 Alt Modullar
- 7.12 Bundling
- 7.13 Dəyişdirmək
- 7.14 Etibarlı Yaddaş
- 7.15 Qısa Məzmun
-
8. Git’i Fərdiləşdirmək
- 8.1 Git Konfiqurasiyası
- 8.2 Git Atributları
- 8.3 Git Hook’ları
- 8.4 Git-Enforced Siyasət Nümunəsi
- 8.5 Qısa Məzmun
-
9. Git və Digər Sistemlər
- 9.1 Git Müştəri kimi
- 9.2 Git’ə Miqrasiya
- 9.3 Qısa Məzmun
-
10. Git’in Daxili İşləri
- 10.1 Plumbing və Porcelain
- 10.2 Git Obyektləri
- 10.3 Git Referansları
- 10.4 Packfile’lar
- 10.5 Refspec
- 10.6 Transfer Protokolları
- 10.7 Maintenance və Məlumatların Bərpası
- 10.8 Mühit Dəyişənləri
- 10.9 Qısa Məzmun
-
A1. Appendix A: Digər Mühitlərdə Git
- A1.1 Qrafik interfeyslər
- A1.2 Visual Studio’da Git
- A1.3 Visual Studio Code’da Git
- A1.4 Eclipse’də Git
- A1.5 Sublime Text’də Git
- A1.6 Bash’da Git
- A1.7 Zsh’də Git
- A1.8 PowerShell’də Git
- A1.9 Qısa Məzmun
-
A2. Appendix B: Proqramlara Git Daxil Etmək
- A2.1 Əmr-sətri Git
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
A3. Appendix C: Git Əmrləri
- A3.1 Quraşdırma və Konfiqurasiya
- A3.2 Layihələrin Alınması və Yaradılması
- A3.3 Sadə Snapshotting
- A3.4 Branching və Birləşmə
- A3.5 Layihələrin Paylaşılması və Yenilənməsi
- A3.6 Yoxlama və Müqayisə
- A3.7 Debugging
- A3.8 Patching
- A3.9 E-poçt
- A3.10 Xarici Sistemlər
- A3.11 İdarəetmə
- A3.12 Plumbing Əmrləri
4.7 Server’də Git - GitWeb
GitWeb
Artıq sizin proyektinizə oxuma/yazma və sadəcə-oxuma girişiniz var və siz sadə veb bazasında görüntüləyə bilərsiniz. Git Gitweb adlanan və bunun üçün istifadə olunan GGI skriplə gəlir.
Əgər siz GitWebin proyektinizdə necə görünəcəyini görmək istəyirsinizsə, Git sizin siteminizdə lighttpd
və ya webrick
kimi yüngül veb serveri varsa müvəqqəti instasiyanı yandırmaq əmri ilə gələcək. Linux mexanizmlərində lighttpd
çox vaxt quraşdırılmış olur, yəni siz proyekt qovluğunuza git instaweb
yazaraq onu işə sala bilərsiniz. Lakin, Mac işlədirsinizsə Leopard Rubdən əvvəl quraşdırılmış olduğundan webrick
sizə ən uyğun seçim olacaq. Instaweb
-i lighttpd olmadan başlatmaq istəyirsinizsə onu --httpd
seçimilə işə sala bilərsiniz.
$ git instaweb --httpd=webrick
[2009-02-21 10:02:21] INFO WEBrick 1.3.1
[2009-02-21 10:02:21] INFO ruby 1.8.6 (2008-03-03) [universal-darwin9.0]
O port 1234-də HTTPD serverini işə salır və daha sonra həmin səhifədə açılan veb browseri avtomatik işə salır. İşinizi bitirib serveri söndürmək istəyəndə isə eyni əmri --stop
seçimi ilə edə bilərsiniz.
$ git instaweb --httpd=webrick --stop
Əgər siz öz komandanız və ya idarə etdiyiniz açıq mənbəli proyektlər üçün veb interfeys qoşmaq istəyirsinizsə, öz normal veb serverinizin dəstəklədiyi CGI skriptini qoşmalısınız.
Bəzi Linux distribyutorlarının apt
və ya dnf
ilə quraşdırılabilən gitweb paketi var və siz ilk onları yoxlaya bilərsiniz. Biz manual və sürətli şəkildə Gitwebi işə salacağıq. İlkin olaraq sizə Gitweb ilə gələn Git mənbə kodunu əldə etmək və uyğum CGI skripti yaratmaq lazım olacaq:
$ git clone git://git.kernel.org/pub/scm/git/git.git
$ cd git/
$ make GITWEB_PROJECTROOT="/srv/git" prefix=/usr gitweb
SUBDIR gitweb
SUBDIR ../
make[2]: `GIT-VERSION-FILE' is up to date.
GEN gitweb.cgi
GEN static/gitweb.js
$ sudo cp -Rf gitweb /var/www/
Yadda saxlayın ki, GITWEB_PROJECTROOT
-da Git deposunu tapmaq əmri dəyişkəndir. İndi siz VirtualHost’a əlavə edə biləcəyiniz Apache istifadəsi üçün CGI skripti yaratmaq lazımdır:
<VirtualHost *:80>
ServerName gitserver
DocumentRoot /var/www/gitweb
<Directory /var/www/gitweb>
Options +ExecCGI +FollowSymLinks +SymLinksIfOwnerMatch
AllowOverride All
order allow,deny
Allow from all
AddHandler cgi-script cgi
DirectoryIndex gitweb.cgi
</Directory>
</VirtualHost>
Təkrar qeyd etməliyik ki, GitWeb hər hansı bir CGI və ya Perl dəstəkli veb serverlə işə salına bilər; lakin siz başqa bir şey istifadə etmək istəsəniz onu da quraşdırmaq çətin olmayacaqdır.
Bu halda siz http://gitserver/
-a daxil olaraq onlayn depolarınıza baxa bilərsiniz.