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: "العربية",
code: "ar",
arialabel: "اختر لغة أخرى",
},
{
label: "বাংলা",
code: "bn",
Expand Down Expand Up @@ -160,6 +165,11 @@ module.exports = {
link: "https://github.com/michaeljabotha",
lang: "af",
},
{
name: "Isra Zughyer",
link: "https://github.com/Isracoder",
lang: "ar",
},
{
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 @@ -22,6 +22,14 @@ https://ohshitgit.com/ https://ohshitgit.com/af 302 Language=af
https://dangitgit.com/af https://ohshitgit.com/af/noswears/index.html 200!
https://dangitgit.com/ https://dangitgit.com/af 302 Language=af

# arabic swears
https://ohshitgit.com/ar https://ohshitgit.com/ar/swears/index.html 200!
https://ohshitgit.com/ https://ohshitgit.com/ar 302 Language=ar

# arabic no swears
https://dangitgit.com/ar https://ohshitgit.com/ar/noswears/index.html 200!
https://dangitgit.com/ https://dangitgit.com/ar 302 Language=ar

# russian swears
https://ohshitgit.com/ru https://ohshitgit.com/ru/swears/index.html 200!
https://ohshitgit.com/ https://ohshitgit.com/ru 302 Language=ru
Expand Down
6 changes: 6 additions & 0 deletions ar/noswears/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
layout: layouts/page.njk
locale: ar
contentType: noswears
title: ؟! git آخخ يا
---
5 changes: 5 additions & 0 deletions ar/noswears/partials/footer.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<footer>
<small class="contact rtl">ما هي اللحظة التي قلت فيها آخخ يا git ؟ شاركها معي!</small>
<small class="twitter">{% twitter_link "ksylor" %}</small>
<small class="copyright">{{site.copyright | safe}}</small>
</footer>
11 changes: 11 additions & 0 deletions ar/noswears/partials/intro.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<p class="rtl">
الgit صعب : التعثر سهل, و معرفة كيفية اصلاح اخطائك مستحيل.التوثيق ل git تتمثل فيه مشكلة الدجاجة و البيضة , بحيث لا تستطيع البحث عن كيفية اخراج نفسك من المأزق
<em>الا اذا كنت تعلم اسم الحل الازم</em>
حتى تحل مشكلتك.

</p>

<p class="rtl">
لذا فهذه هي مجموعة من المواقف السيئة وضعت نفسي بها و كيف تمكنت بنهاية المطاف اخراج نفسي منها.
<em>باللغة العربية الواضحة</em>.
</p>
3 changes: 3 additions & 0 deletions ar/noswears/partials/outro.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<p class="rtl">
ملاحظة : هذا الموقع ليس معنياً بأن يكون مرجع متكامل, و نعم هناك طرق أخرى لفعل الأمور نفسها بطرق نقية منسجمة مع النظرية الصحيحة أو اياً كان , لكنني توصلت الى هذه الخطوات عن طريق التجربة و الخطأ و الكثير من الشتم و قلب للطاولات , و كانت لدي هذه الفكرة بأن اشاركهم معكم بالإضافة إلى القليل من الفكاهة. خذه او اتركه كما تريد !
</p>
8 changes: 8 additions & 0 deletions ar/noswears/partials/thanks.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

<p class="rtl"> شكراً لكل من ساهم وتطوع لترجمة الموقع إلى لغات أخرى , انتم حقا رائعون!
{% include "partials/collaborator-list.njk" %}. <br>
:مع المساعدة الإضافية من
{% include "partials/otherhelper-list.njk" %}
</p>

<p class="rtl"> {% github_link %} اذا أردت أن تساعد و تضيف ترجمة إلى لغتك , قدم طلب عن طريق</p>
27 changes: 27 additions & 0 deletions ar/noswears/tips/01-magic-time-machine.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
tags: tip
title: <div class="rtl"> يا للهراء , لقد اخطأت كثيراً , ارجوك اخبرني انه يوجد في git طريقة سحرية للانتقال عبر الزمن !؟ </div>
id: آلة-زمن-سحرية
order: 1
---

<div class="rtl">

```git
git reflog
# سوف ترى قائمة تحوي كل التغيرات
# branches على نطاق جميع ال, git في
# لكل منها يوجد index HEAD@{index}
# لذا اختر المناسبة التي تم حفظها
# قبل ان دمرت كل شيء,ثم
git reset HEAD@{index}
# الة تغيير الزمن السحرية !
```

تستطيع ان تستخدم هذا لاسترجاع ما حذفته خطأً, أو لمجرد ازالة بعض الامور التي جربتها و افسدت ال repo
أو للتعافي بعد merge خاطئ
أو حتى الرجوع إلى نقطة في الزمن كان كل شيء يعمل .
أنا استخدم "reflog" كثيراً
فلذا ارفع قبعتي مرات عدة احتراماً لكل من اقترح اضافته!

</div>
23 changes: 23 additions & 0 deletions ar/noswears/tips/02-change-last-commit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
tags: tip
title: <div class="rtl"> يا للهراء ,لقد حفظت ثم أدركت على الفور أني أحتاج أن أغير شيء واحد صغير </div>
id: غير-الحفظ-الأخير
order: 2
---

<div class="rtl">

```git
# اجري تعديلاتك
. git add
# أو اضف ملفات مخصصة
git commit --amend --no-edit
# اﻵن اخر commit يحوي التغيرات
# تحذير: لا تعدل ابداً ال public commits
```

هذا يحدث لي بالعادة عندما اقوم بعمل commit ثم اجري ال tests , و يا للازعاج, الاحظ اني لم اضع فراغاً بعد اشارة تساوي. تستطيع ايضاً أن تجري التغيير ك commit جديد ثم تقوم بعمل `rebase -i` حتى تضغطهم الاثنين معاً , لكن هذا بالتقريب أسرع بمليون مرة.

_تحذير : لا يجب ابداً أن تعدل ال commits التي تم عمل push لها الى public/shared branch ! فقط اجري تعديلات على commits تتواجد فقط في نسختك المحلية وإلا سيعود عليك ذلك بالعاواقب..._

</div>
17 changes: 17 additions & 0 deletions ar/noswears/tips/03-change-last-commit-message.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
tags: tip
title: <div class="rtl"> يا للهراء,احتاج إلى أن أغير الرسالة على آخر commit لدي !</div>
id: غير-رسالة-الحفظ-الأخيرة
order: 3
---

<div class="rtl">

```git
git commit --amend
# اتبع التوجيهات لتغيير الرسالة
```

متطلبات تنسيق رسالة commit غبية

</div>
24 changes: 24 additions & 0 deletions ar/noswears/tips/04-accidental-commit-master.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
tags: tip
title: <div class="rtl"> يا للهراء, لقد حفظت commit على ال master وكان يجب ان تكون على branch جديدة !</div>
id: حفظ-خاطئ-عند-الأساس
order: 4
---

<div class="rtl">

```git
# انشئ branch جديدة بناء على حالة
# ال master الحالية
git branch some-new-branch-name
# ازل اخر commit من ال master
git reset HEAD~ --hard
git checkout some-new-branch-name
# الآن ال commit متواجد في هذا ال branch :)
```

ملاحظة : هذا لا يعمل إن كنت قد قمت بعمل push لل commit إلى public/shared branch , و ايضاً اذا حاولت امور اخرى اولاً , ربما قد تحتاج
إلى أن تقوم بعمل`git reset HEAD@{x}`
بدلا من `HEAD~` يحيث أن x تمثل عدد ال commits إلى الوراء. مأساة لانهائية. أيضاً, العديد العديد العديد من الاشخاص اقترحوأ طريقة رائعة لجعل هذا اقصر لم أكن اعلمها أنا , لذا شكراً جميعاً!

</div>
35 changes: 35 additions & 0 deletions ar/noswears/tips/05-accidental-commit-wrong-branch.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
tags: tip
title: <div class="rtl"> يا للهراء, لقد قمت بعمل commit على ال branch الخاطئة! </div>
id: حفظ-في-غصن-خاطئ
order: 5
---

<div class = "rtl">

```git
# لإزالة آخر commit مع المحافظة على التغيرات في البرنامح
git reset HEAD~ --soft
git stash
# الانتقال إلى ال branch الصحيحة
git checkout name-of-the-correct-branch
git stash pop
# ضف الملفات كلها أو بعض منها
git add .
git commit -m "your message here"
# الآن تم حفظ التغيرات على ال branch الصحيحة

```

الكثير من الناس اقترحوا استخدام `cherry-pick` لحل هذه المشكلة أيضاً, لذا اختر الذي تراه مناسباً لك!

```git
git checkout name-of-the-correct-branch
# اختر اخر commit من ال master
git cherry-pick master
# ثم احذفه من master
git checkout master
git reset HEAD~ --hard
```

</div>
17 changes: 17 additions & 0 deletions ar/noswears/tips/06-dude-wheres-my-diff.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
tags: tip
title: <div class ="rtl"> يا للهراء, حاولت تنفيذ أمر diff لكن لم يحدث شيئاً! </div>
id: أين-الاختلاف
order: 6
---

<div class ="rtl">
اذا كنت تعلم أنك اجريت التعديلات على الملفات , لكن 'diff' نتيجته فارغة , على الارجح قمت بعمل 'add' لملفاتك إلى منطقة ال staging و تحتاج ان تسخدم أمر خاص

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

&macr;\\\_(ツ)\_/&macr; (نعم, أعلم أن هذه خاصية و ليست خطأ لكنه مربك و غير واصح عند أول مرة يحدث اليك!)

</div>
25 changes: 25 additions & 0 deletions ar/noswears/tips/07-undo-a-commit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
tags: tip
title: <div class="rtl"> يا للهراء, احتاج إلى أن أقوم بإلغاء commit سابق يوجد بعده 5 commits ! </div>
id: الغاء-حفظ
order: 7
---

<div class="rtl">

```git
# جد ال commit الذي تريد ازالته
git log
# استخدم الاسهم على لوحة المفاتيح للتنقل
# عند ايجادك ال commit المرغوب قم بحفظ رمزه الخاص أي ال hash
git revert [saved hash]
# سوف ينشئ git الآن commit جديدة تلغي ال commit الذي اخترتها
# تتبع الخطوات لتعديل رسالة ال commit
# أو احفظ وقم بعمل commit
```

تبين أنه لا حاجة لك إلى أن تبحث عن متحوى الملفات السابقة و تقوم بنسخها و لصقها حتى تزيل التغيرات! أذا قمت بعمل commit لشيء خاطئ أو bug, تستطيع أن تلغي ال commit مرة واحدة باستخدام `revert`.

تستطيع أيضاً أن تقوم بعمل revert لملف واحد بدلاً من commit بأكمله! لكن بالطبع, بطبيعة git الرائعة,هذه مجموعة مختلفة كلياً من الآوامر...

</div>
23 changes: 23 additions & 0 deletions ar/noswears/tips/08-undo-a-file.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
tags: tip
title: <div class="rtl"> يا للهراء,أريد أن ألغي التغيرات التي أجريتها على ملف!</div>
id: اعادة-حالة-الملف
order: 8
---

<div class="rtl">

```git
# جد hash لأحد ال commits قبل أن تم تغيير الملف
git log
# انتقل إلى الأعلى و الأسفل عبر مفاتيح الأسهم
# عند ايجادك ال commit قم بحفظ ال hash
git checkout [saved hash] --path/to/file
# اﻵن النسخة القديمة من الملف ستكون في البرنامج
git commit -m "wow, you don't need to copy and paste"
```

عندما اكتشفت كيفية فعل هذا الأمر كان شيئاً ضخماً. ضخماً. ض-خ-م-اً. لكن حقاً, على أي كوكب يكون أمر checkout حل منطقي لإزالة التغيرات على ملف؟
:النظر-بتضجر-إلى-linus torvalds:

</div>
32 changes: 32 additions & 0 deletions ar/noswears/tips/20-fuck-this-noise.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
tags: tip
title: <div class="rtl"> انسى هذا الازعاج, أنا أستسلم </div>
id: انسى-هذا-الازعاج
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 stupid-git-repo-dir
git clone https://some.github.url/stupid-git-repo-dir.git
cd stupid-git-repo-dir
```

<div class="rtl">

شكراً ل Eric.V على هذه , أي شكاوى عن كيفية استخدام `sudo` في هذه النكتة تستطيعون أن توجهوها اليه.

لكن حقاً, إذا كانت ال branch خاصتك مدمرة لدرجة أنك تحتاج أن تعيد حالة ال repo لتكون مماثلة لل remote repo بطريقة "موافقة-منgit" , جرب هذا , لكن احذر فهي خطوات مدمرة و لا يستطيع التراجع عنها!

```git
# احضر النسخة الأخيرة من ال origin
git fetch origin
git checkout master
git reset --hard origin/master
# احذف الملفات و المجلدات غير المحفوظة من قبل git
git clean -d --force
# اعد خطوات checkout/reset/clean لكل branch مدمر لديك
```

</div>
1 change: 1 addition & 0 deletions ar/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 ar/swears/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
layout: layouts/page.njk
locale: ar
contentType: swears
title: ؟! git تباً
---
2 changes: 2 additions & 0 deletions ar/swears/partials/banner.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@

<aside class="notice rtl">مرحباً! تستطيع الحصول على نفس المحتوى لكن مع شتائم أقل على<a href="{{site.url_noswears}}/{{locale}}">dangitgit.com</a></aside>
5 changes: 5 additions & 0 deletions ar/swears/partials/footer.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<footer>
<small class="contact rtl">ما هي اللحظة التي قلت فيها تبا ل git ؟ شاركها معي!</small>
<small class="twitter">{% twitter_link "ksylor" %}</small>
<small class="copyright">{{site.copyright | safe}}</small>
</footer>
11 changes: 11 additions & 0 deletions ar/swears/partials/intro.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<p class="rtl">
الgit صعب : التعثر سهل, و معرفة كيفية اصلاح اخطائك مستحيل.التوثيق ل git تتمثل فيه مشكلة الدجاجة و البيضة , بحيث لا تستطيع البحث عن كيفية اخراج نفسك من المأزق
<em>الا اذا كنت تعلم اسم الحل الازم</em>
حتى تحل مشكلتك.

</p>

<p class="rtl">
لذا فهذه هي مجموعة من المواقف السيئة وضعت نفسي بها و كيف تمكنت بنهاية المطاف اخراج نفسي منها.
<em>باللغة العربية الواضحة</em>.
</p>
3 changes: 3 additions & 0 deletions ar/swears/partials/outro.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<p class="rtl">
ملاحظة : هذا الموقع ليس معنياً بأن يكون مرجع متكامل, و نعم هناك طرق أخرى لفعل الأمور نفسها بطرق نقية منسجمة مع النظرية الصحيحة أو اياً كان , لكنني توصلت الى هذه الخطوات عن طريق التجربة و الخطأ و الكثير من الشتم و قلب للطاولات , و كانت لدي هذه الفكرة بأن اشاركهم معكم بالإضافة إلى القليل من الفكاهة و الشتائم. خذه او اتركه كما تشاء !
</p>
8 changes: 8 additions & 0 deletions ar/swears/partials/thanks.njk
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

<p class="rtl"> شكراً لكل من ساهم وتطوع لترجمة الموقع إلى لغات أخرى , انتم حقا رائعون!
{% include "partials/collaborator-list.njk" %}. <br>
:مع المساعدة الإضافية من
{% include "partials/otherhelper-list.njk" %}
</p>

<p class="rtl"> {% github_link %} اذا أردت أن تساعد و تضيف ترجمة إلى لغتك , قدم طلب عن طريق</p>
27 changes: 27 additions & 0 deletions ar/swears/tips/01-magic-time-machine.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
tags: tip
title: <div class="rtl"> تباً , لقد اخطأت كثيراً , ارجوك اخبرني انه يوجد في git طريقة سحرية للانتقال عبر الزمن !؟ </div>
id: آلة-زمن-سحرية
order: 1
---

<div class="rtl">

```git
git reflog
# سوف ترى قائمة تحوي كل التغيرات
# branches على نطاق جميع ال, git في
# لكل منها يوجد index HEAD@{index}
# لذا اختر المناسبة التي تم حفظها
# قبل ان دمرت كل شيء,ثم
git reset HEAD@{index}
# الة تغيير الزمن السحرية !
```

تستطيع ان تستخدم هذا لاسترجاع ما حذفته خطأً, أو لمجرد ازالة بعض الامور التي جربتها و افسدت ال repo
أو للتعافي بعد merge خاطئ
أو حتى الرجوع إلى نقطة في الزمن كان كل شيء يعمل .
أنا استخدم "reflog" كثيراً
فلذا ارفع قبعتي مرات عدة احتراماً لكل من اقترح اضافته!

</div>
Loading