Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions _data/site.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,11 @@ module.exports = {
code: "af",
arialabel: "Sien die webblad in ander tale",
},
{
label: "Azərbaycanca",
code: "az",
arialabel: "Başqa dillərdə oxuyun",
},
{
label: "বাংলা",
code: "bn",
Expand Down Expand Up @@ -160,6 +165,11 @@ module.exports = {
link: "https://github.com/michaeljabotha",
lang: "af",
},
{
name: "Zaman Kazimov",
link: "https://github.com/kazimovzaman2",
lang: "az",
},
{
name: "Moritz Stückler",
link: "https://github.com/pReya",
Expand Down
8 changes: 8 additions & 0 deletions _redirects
Original file line number Diff line number Diff line change
Expand Up @@ -229,3 +229,11 @@ https://ohshitgit.com/ https://ohshitgit.com/fa 302 Language=fa
# persian no swears
https://dangitgit.com/fa https://dangitgit.com/fa/noswears/index.html 200!
https://dangitgit.com/ https://dangitgit.com/fa 302 Language=fa

# azerbaijani swears
https://ohshitgit.com/az https://ohshitgit.com/az/swears/index.html 200!
https://ohshitgit.com/ https://ohshitgit.com/fa 302 Language=az

# azerbaijani no swears
https://dangitgit.com/az https://dangitgit.com/az/noswears/index.html 200!
https://dangitgit.com/ https://dangitgit.com/fa 302 Language=az
6 changes: 6 additions & 0 deletions az/noswears/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
layout: layouts/page.njk
locale: az
contentType: noswears
title: İçinə zibil, Git!?!
---
5 changes: 5 additions & 0 deletions az/noswears/partials/footer.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<footer>
<small class="contact">Sənin içinə zibil, git hekayən nədir? Mənimlə paylaş!</small>
<small class="twitter">{% twitter_link "ksylor" %}</small>
<small class="copyright">{{site.copyright | safe}}</small>
</footer>
3 changes: 3 additions & 0 deletions az/noswears/partials/intro.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<p>Git çətindir: hər şeyi dağıtmaq isə asan, və səhvlərinizi necə düzəldəcəyinizi tampaq da mümkünsüz kimi bir şeydi. Git dokumentasiyasına girib axtarmağa başladığınızda, bu qarmaşıqlıq içindən necə canınızı qurtaracağınızı tapmaq istəyirsiz və bunun tək yolu <em>qarşılaşdığınız xətanın adının nə olduğunu bilirsizsə mümkün ola biləcəyini</em> başa düşürsüz. Sonra toyuq yumurtadan çıxıb yumurtamı toyuqdan deyə fikirləşirsiz.</p>

<p>Və buna görə də, burada özümün içindən çıxa bilmədiyim vəziyyətləri, və bunlardan bir müddət sonra necə canımı qurtardığımı <em>sadə dildə Azərbaycanca</em> izah etməyə çalışacam.</p>
1 change: 1 addition & 0 deletions az/noswears/partials/outro.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<p>*Etiraz: Bu saytın təfərruatlı bir mənbə olmaq kimi bir məqsədi yoxdur. Və haqlısız, burda yazılan həlləri reallaşdırmanın daha teorik üsulları da var, amma mən bu həllərə sınama və səhv çıxma, çoxlu söyüşlər və ora bura masa tullamaqla gəldim və bunları həyasızlıq və söyüş ilə bölüşmək üçün dəli fikrim var idi. Ya istifadə edin, ya da başını buraxın getsin!</p>
4 changes: 4 additions & 0 deletions az/noswears/partials/thanks.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<p>Bu saytı yeni dillərə çevirmək üçün könüllü olan hər kəsə çox çox təşəkkürlər, möhtəşəmsiz!
{% include "partials/collaborator-list.njk" %}. Əlavə olaraq {% include "partials/otherhelper-list.njk" %}'ın köməyi ilə.</p>

<p>Əgər siz də kömək olub öz dilinizə çevirmək istəyirsizsə {% github_link %} repo'suna PR göndərin.</p>
20 changes: 20 additions & 0 deletions az/noswears/tips/01-magic-time-machine.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
tags: tip
title: İçinə zibil, çox böyük bir səhv etdim, nolar git'in bunu geri alacaq sehirli zaman maşını olduğunu de!?!
id: magic-time-machine
order: 1
---

```git
git reflog
# bütün branch'lar daxil, git'də etdiyiniz
# hər bir şeyin siyahısını görəcəksiniz!
# Hər birinin HEAD@{index} formatında indeksi var
# səhvlərdən əvvəlki təmiz vəziyyəti tap,
git reset HEAD@{index}
# bu da sənə zaman maşını
```

You can use this to get back stuff you accidentally deleted, or just to remove some stuff you tried that broke the repo, or to recover after a bad merge, or just to go back to a time when things actually worked. I use `reflog` A LOT. Mega hat tip to the many many many many many people who suggested adding it!

Siz bunu səhvən sildiyiniz bir şeyi geri qaytarmaq və ya sadəcə reponu pozan bəzi şeyləri silmək və ya bərbad merge'ü geri qaytarmaq ya da hər şeyin işlədiyi vaxta geri qayıtmaq üçün istifadə edə bilərsiz. Mən `reflog`'u çox istifadə edirəm. Bunu buraya əlavə etməyi tövsiyyə edən hər kəsə təşəkkür edirəm.
18 changes: 18 additions & 0 deletions az/noswears/tips/02-change-last-commit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
tags: tip
title: İçinə zibli, Kodları commit'lədim və yadıma düşdü ki, kiçik bir dəyişiklik də etməliyəm!
id: change-last-commit
order: 2
---

```git
# dəyişikliyinizi edin
git add . # və ya faylların bir bir adını yazın
git commit --amend --no-edit
# və son commit bu dəyişiklikləri də içinə alacaq!
# XƏBƏRDARLIQ: heç vaxt push etdiyiniz commit'ləri amend etməyin!
```

Bu çox vaxtı mənim başıma kodu commit edəndən sonra test'ləri/linter'i vs. işlədəndən sonra gəlir, məsələn, bərabərdir işarəsindən sonra boşluq qoymaq yadımdan çıxır. Bunu etməyin başqa bir yolu da, lazım olan dəyişiklikləri yeni bir commit içində yaradıb, `rebase -i` komandası ilə ikisini birləşdirməkdir, amma bu üsul hardasa 1 milyon dəfə daha sürətlidir.

*Xəbərdarlıq: public/shared branch'lara push ettiyiniz bir commit'i amend etməməlisiniz! Sadəcə local'da olan commit'i amend eləməlisiz, əks təqdirdə pis zaman keçirə bilərsiniz.*
12 changes: 12 additions & 0 deletions az/noswears/tips/03-change-last-commit-message.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
tags: tip
title: İçinə zibil, axırıncı commit'dəki mesajı dəyişməliyəm!
id: change-last-commit-message
order: 3
---
```git
git commit --amend
# commit mesajını dəyişdirmək üçün göstərişlərə əməl edin
```

Mənasız commit mesajının format tələbləri...
17 changes: 17 additions & 0 deletions az/noswears/tips/04-accidental-commit-master.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
tags: tip
title: İçinə zibil, Səhvən yeni branch açıb oraya commit'ləməli olduğum şeyi, master branch'a commitlədim!
id: accidental-commit-master
order: 4
---

```git
# master'in indiki halıyla yeni branch açın
git branch some-new-branch-name
# master'dən son commit'i silin
git reset HEAD~ --hard
git checkout some-new-branch-name
# yeni commit artıq bu branch'da yaşıyacaq :)
```

Qeyd: əgər commit'i çoxdan public/shared repo'ya push etmisinizsə, və əvvəlcə başqa şeyləri yoxlamısınızsa, bu işə yaramıyacaq, onun yerinə də `HEAD~` əvəzinə `git reset HEAD@{1-2-commit-əvvəl}` yoxlayın. Sonsuz qəm-kədər. Mənim bildiyimdən çox çox daha qısa yolları mənə məsləhət görən bir çox adam oldu. Hamısına çox təşəkkürlər!
29 changes: 29 additions & 0 deletions az/noswears/tips/05-accidental-commit-wrong-branch.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
tags: tip
title: İçinə zibil, səhvən kodu başqa branch'a commitlədim!
id: accidental-commit-wrong-branch
order: 5
---

```git
# son commit'i geri al, amma dəyişikliklər qalsın
git reset HEAD~ --soft
git stash
# düzgün branch'a keç
git checkout düzgün-branch-adı
git stash pop
git add . # və ya faylların bir bir adını yazın
git commit -m "mesajın";
# indi dəyişikliklərin düzgün branch'a keçdi
```

Çox adam bu vəziyyət üçün `cherry-pick` komandasını da istifadəsini tövsiyyə edir, ona görə hansı sizə daha rahat gəlirsə onu istifadə edə bilərsiz.

```git
git checkout düzgün-branch-adı
# master'dəki son commit'i al
git cherry-pick master
# master'dən o commit'i sil
git checkout master
git reset HEAD~ --hard
```
14 changes: 14 additions & 0 deletions az/noswears/tips/06-dude-wheres-my-diff.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
tags: tip
title: İçinə zibil, iki saatdı diff eləməyə çalışıram, amma nəticə yoxdu?!
id: dude-wheres-my-diff
order: 6
---

Fayllarda dəyişlik etdiyinizi bilirsiniz, amma `diff` komandası sizə nəticə vermirsə, böyük ehtimal faylları `add`'ləmişsiniz və sizə lazım olan xüsusi flag istifadə etməlisiniz.

```git
git diff --staged
```

&macr;\\\_(ツ)\_/&macr; kateqoriyasını əlavə edin. (bəli, bu bir xüsusiyyətdir, səhv deyil, amma baş ağrıdır və ilk dəfə qarşılaşan adam nə edəcəyini bilmir.)
21 changes: 21 additions & 0 deletions az/noswears/tips/07-undo-a-commit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
tags: tip
title: İçinə zibil, 5-6 commit əvvəl qeyd olunan commit'i geri almalıyam!
id: undo-a-commit
order: 7
---

```git
# geri alınacaq commit'i tapın
git log
# ox düymələrini istifadə edərək keçmişdə yuxarı/aşağı gəzinin
# commit'i tapanda, hash'ni kopyalayın
git revert [kopyalanan hash]
# git sizin üçün bunu geri alan bir commit yaradacaq
# commit mesajını göstərişləri edin
# və ya sadəcə saxlayın və commit'ləyin
```

Bir dəyişikliyi geri almaq üçün dəyişən yerləri tapıb bir bir yeni fayllara kopyalamaq lazım deyilmiş! Əgər səhvən bug'ı commit etmisinizsə, `revert` ilə commit'i geri ala bilərsiniz.

Hətta, tüm bir commit'i geri almaq əvəzinə, tək bir fayl da geri ala bilərsiz! A düzdü, həqiqi git metoduna görə, hər funksiyanın fərqli komandası var...
18 changes: 18 additions & 0 deletions az/noswears/tips/08-undo-a-file.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
tags: tip
title: İçinə zibil, bir fayldaki dəyişiklikləri geri almalıyam!
id: undo-a-file
order: 8
---

```git
# fayl dəyişməzdən əvvəlki halının hash'ni tap
git log
# ox düymələrini istifadə edərək keçmişdə yuxarı/aşağı gəzinin
# commit'i tapanda, hash'ni kopyalayın
git checkout [kopyalanan hash] -- qovluq/və/faylın/adı
# faylın köhnə halı indi index'dədir
git commit -m "Vay vay, geri almaq üçün copy paste'ə ehtiyac yoxuymuş"
```

Bunu öyrənmək mənim üçün MÖHTƏŞƏM'iydi. MÖHTƏŞƏM. MÖH-TƏ-ŞƏM. Amma həqiqətən, hansı planetdə `checkout --` istifadə edərək bir faylın geri alınmasının ən yaxşı yolunun bu olduğu məntiqlidi ki? :shakes-fist-at-linus-torvalds:
29 changes: 29 additions & 0 deletions az/noswears/tips/20-fuck-this-noise.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
tags: tip
title: Bezdim, başını buraxıram.
id: forget-this-noise
note: this should always be the last one in the list, so setting order to 20 so I don't have to re-name/re-order it
order: 20
---

```git
cd ..
sudo rm -r xarab-git
git clone https://some.github.url/xarab-git.git
cd xarab-git
```

Bu misala görə Eric V.-ə təşəkkür edirəm. Bu zarafatda `sudo` istifadəsinə dair bütün şikayətlər ona ünvanlana bilər.

Amma həqiqətən, əgər local branch'ın dağılıbsa, və bu vəziyyəti remote repo'daki son halına "git-approved" bir şəkildə geri qaytarmaq istiyirsinizsə, bunu eliyin, amma diqqətli olun, bu proses dağıdıcı və geri dönülməyən bir yoldur.


```git
# origin'in son vəziyyəti
git fetch origin
git checkout master
git reset --hard origin/master
# izlənilməyən faylları və qovluqları silin
git clean -d --force
# bütün branch'lar üçün bunu təkrar edin
```
1 change: 1 addition & 0 deletions az/noswears/tips/tips.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{ "permalink": false }
6 changes: 6 additions & 0 deletions az/swears/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
layout: layouts/page.njk
locale: az
contentType: swears
title: Ay sikim, Git!?!
---
1 change: 1 addition & 0 deletions az/swears/partials/banner.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<aside class="notice">Salam! Eyni məzmunun söyüş olmayan halını <a href="{{site.url_noswears}}/{{locale}}">dangitgit.com</a> ardesinden əldə edə bilərsiniz</aside>
6 changes: 6 additions & 0 deletions az/swears/partials/footer.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<footer>
<small class="contact">Sənin ay sikim, git hekayən nədir? Mənimlə paylaş!
</small>
<small class="twitter">{% twitter_link "ohshitgit" %} {% twitter_link "ksylor" %}</small>
<small class="copyright">{{site.copyright | safe}}</small>
</footer>
3 changes: 3 additions & 0 deletions az/swears/partials/intro.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<p>Git çətindir: sıçıb bulamaq isə asan, və səhvlərinizi necə düzəldəcəyinizi tampaq da mümkünsüz kimi bir şeydi. Git dokumentasiyasına girib axtarmağa başladığınızda, bu zir zibilin içindən necə canınızı qurtaracağınızı tapmaq istəyirsiz və bunun tək yolu <em>qarşılaşdığınız xətanın adının nə olduğunu bilirsizsə mümkün ola biləcəyini</em> başa düşürsüz. Sonra toyuq yumurtadan çıxıb yumurtamı toyuqdan deyə fikirləşirsiz.</p>

<p>Və buna görə də, burada özümün içindən çıxa bilmədiyim vəziyyətləri, və bunlardan bir müddət sonra necə canımı qurtardığımı <em>sadə dildə Azərbaycanca</em> izah etməyə çalışacam.</p>
1 change: 1 addition & 0 deletions az/swears/partials/outro.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<p>*Etiraz: Bu saytın təfərruatlı bir mənbə olmaq kimi bir məqsədi yoxdur. Və haqlısız, burda yazılan həlləri reallaşdırmanın daha teorik üsulları da var, amma mən bu həllərə sınama və səhv çıxma, çoxlu söyüşlər və ora bura masa tullamaqla gəldim və bunları həyasızlıq və söyüş ilə bölüşmək üçün dəli fikrim var idi. Ya istifadə edin, ya da başını buraxın getsin!</p>
4 changes: 4 additions & 0 deletions az/swears/partials/thanks.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<p>Bu saytı yeni dillərə çevirmək üçün könüllü olan hər kəsə çox çox təşəkkürlər, möhtəşəmsiz!
{% include "partials/collaborator-list.njk" %}. Əlavə olaraq {% include "partials/otherhelper-list.njk" %}'ın köməyi ilə.</p>

<p>Əgər siz də kömək olub öz dilinizə çevirmək istəyirsizsə {% github_link %} repo'suna PR göndərin.</p>
18 changes: 18 additions & 0 deletions az/swears/tips/01-magic-time-machine.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
tags: tip
title: Ay sikim, çox böyük bir səhv etdim, nolar git'in bunu geri alacaq sehirli zaman maşını olduğunu de!?!
id: magic-time-machine
order: 1
---

```git
git reflog
# bütün branch'lar daxil, git'də etdiyiniz
# hər bir şeyin siyahısını görəcəksiniz!
# Hər birinin HEAD@{index} formatında indeksi var
# sıçıb bulamazdan əvvəlki təmiz vəziyyəti tap,
git reset HEAD@{index}
# bu da sənə zaman maşını
```

Siz bunu səhvən sildiyiniz bir şeyi geri qaytarmaq və ya sadəcə reponu pozan bəzi şeyləri silmək və ya pox kimi merge'ü geri qaytarmaq ya da hər şeyin işlədiyi vaxta geri qayıtmaq üçün istifadə edə bilərsiz. Mən `reflog`'u çox istifadə edirəm. Bunu buraya əlavə etməyi tövsiyyə edən hər kəsə təşəkkür edirəm.
18 changes: 18 additions & 0 deletions az/swears/tips/02-change-last-commit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
tags: tip
title: Ay sikim, Kodları commit'lədim və yadıma düşdü ki, kiçik bir dəyişiklik də etməliyəm!
id: change-last-commit
order: 2
---

```git
# dəyişikliyinizi edin
git add . # və ya faylların bir bir adını yazın
git commit --amend --no-edit
# və son commit bu dəyişiklikləri də içinə alacaq!
# XƏBƏRDARLIQ: heç vaxt push etdiyiniz commit'ləri amend etməyin!
```

Bu çox vaxtı mənim başıma kodu commit edəndən sonra test'ləri/linter'i vs. işlədəndən sonra gəlir, məsələn, beynimi sikim, bərabərdir işarəsindən sonra boşluq qoymaq yadımdan çıxır. Bunu etməyin başqa bir yolu da, lazım olan dəyişiklikləri yeni bir commit içində yaradıb, `rebase -i` komandası ilə ikisini birləşdirməkdir, amma bu üsul hardasa 1 milyon dəfə daha sürətlidir.

*Xəbərdarlıq: public/shared branch'lara push ettiyiniz bir commit'i amend etməməlisiniz! Sadəcə local'da olan commit'i amend eləməlisiz, əks təqdirdə altı dəyə bilər.*
12 changes: 12 additions & 0 deletions az/swears/tips/03-change-last-commit-message.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
tags: tip
title: Ay sikim, axırıncı commit'dəki mesajı dəyişməliyəm!
id: change-last-commit-message
order: 3
---
```git
git commit --amend
# commit mesajını dəyişdirmək üçün göstərişlərə əməl edin
```

Soxduğumun commit mesajının format tələbləri...
17 changes: 17 additions & 0 deletions az/swears/tips/04-accidental-commit-master.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
tags: tip
title: Ay sikim, Səhvən yeni branch açıb oraya commit'ləməli olduğum şeyi, master branch'a commitlədim!
id: accidental-commit-master
order: 4
---

```git
# master'in indiki halıyla yeni branch açın
git branch some-new-branch-name
# master'dən son commit'i silin
git reset HEAD~ --hard
git checkout some-new-branch-name
# yeni commit artıq bu branch'da yaşıyacaq :)
```

Qeyd: əgər commit'i çoxdan public/shared repo'ya push etmisinizsə, və əvvəlcə başqa şeyləri yoxlamısınızsa, bu işə yaramıyacaq, onun yerinə də `HEAD~` əvəzinə `git reset HEAD@{1-2-commit-əvvəl}` yoxlayın. Sonsuz qəm-kədər. Mənim bildiyimdən çox çox daha qısa yolları mənə məsləhət görən bir çox adam oldu. Hamısına çox təşəkkürlər!
29 changes: 29 additions & 0 deletions az/swears/tips/05-accidental-commit-wrong-branch.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
tags: tip
title: Ay sikim, səhvən kodu başqa branch'a commitlədim!
id: accidental-commit-wrong-branch
order: 5
---

```git
# son commit'i geri al, amma dəyişikliklər qalsın
git reset HEAD~ --soft
git stash
# düzgün branch'a keç
git checkout düzgün-branch-adı
git stash pop
git add . # və ya faylların bir bir adını yazın
git commit -m "mesajın";
# indi dəyişikliklərin düzgün branch'a keçdi
```

Çox adam bu vəziyyət üçün `cherry-pick` komandasını da istifadəsini tövsiyyə edir, ona görə hansı sizə daha rahat gəlirsə onu istifadə edə bilərsiz.

```git
git checkout düzgün-branch-adı
# master'dəki son commit'i al
git cherry-pick master
# master'dən o commit'i sil
git checkout master
git reset HEAD~ --hard
```
Loading