Git ignore: Difference between revisions

From binaryoption
Jump to navigation Jump to search
Баннер1
(@pipegas_WP)
 
(@pipegas_WP)
 
Line 3: Line 3:
'''مقدمة'''
'''مقدمة'''


في عالم [[تطوير البرمجيات]] و [[التحكم في الإصدار]] باستخدام [[Git]]، قد تجد نفسك أمام ملفات لا ترغب في تضمينها في مستودع [[Git]] الخاص بك. هذه الملفات قد تكون ملفات مؤقتة، أو ملفات تحتوي على معلومات حساسة مثل مفاتيح API، أو ملفات خاصة بإعدادات المستخدم. هنا يأتي دور ملف `.gitignore`.  هذا المقال هو دليل شامل للمبتدئين حول `.gitignore`، يشرح ما هو، وكيف يعمل، وكيفية استخدامه بفعالية.
في عالم تطوير البرمجيات، وخاصةً عند العمل مع [[أنظمة التحكم في الإصدار]] مثل [[Git]]، غالبًا ما تواجه ملفات ومجلدات لا ترغب في تضمينها في مستودعك. هذه الملفات قد تكون مؤقتة، أو تحتوي على بيانات حساسة، أو ببساطة ليست جزءًا من الكود المصدري الفعلي. هنا يأتي دور ملف `.gitignore`.  هذا الملف ضروري للحفاظ على نظافة مستودع [[Git]] الخاص بك وتجنب إرسال ملفات غير ضرورية إلى [[GitHub]] أو أي منصة استضافة أخرى.  سيغطي هذا المقال كل ما تحتاج لمعرفته حول ملف `.gitignore`، بدءًا من الغرض منه وصولًا إلى كيفية استخدامه بفعالية.


== ما هو ملف .gitignore؟ ==
'''ما هو ملف .gitignore؟'''


ملف `.gitignore` هو ملف نصي عادي يوضع في جذر [[مستودع Git]] الخاص بك.  يحتوي هذا الملف على قائمة بالملفات والأنماط التي يجب على Git تجاهلها. بمعنى آخر، يخبر Git بعدم تتبع التغييرات التي تطرأ على هذه الملفات أو المجلداتهذا مهم جداً لعدة أسباب:
ملف `.gitignore` هو ملف نصي عادي يحدد الملفات والمجلدات التي يجب على [[Git]] تجاهلها. بمعنى آخر، يخبر [[Git]] ألا يتتبع هذه الملفات أو المجلدات، وبالتالي لن يتم تضمينها في عمليات [[التثبيت]] أو [[الالتزام]] أو [[الدفع]]يتم وضعه عادةً في جذر مستودع [[Git]] الخاص بك.


* '''الحفاظ على نظافة المستودع:'''  منع الملفات غير الضرورية من تضخيم حجم المستودع الخاص بك.
'''لماذا نستخدم ملف .gitignore؟'''
* '''الأمان:'''  تجنب الالتزام بملفات تحتوي على معلومات حساسة، مثل كلمات المرور أو مفاتيح API.
* '''تجنب التعارضات:'''  منع التعارضات غير الضرورية بين المطورين بسبب الملفات التي تختلف من جهاز لآخر (مثل ملفات الإعدادات الخاصة بكل مستخدم).
* '''تحسين الأداء:'''  تسريع عمليات Git مثل `git status` و `git add` و `git commit`.


== كيف يعمل ملف .gitignore؟ ==
هناك عدة أسباب لاستخدام ملف `.gitignore`:


يعمل `.gitignore` من خلال مطابقة الأنماط المحددة فيه مع أسماء الملفات والمجلدات في مستودعك.  يمكن أن تكون هذه الأنماط بسيطة مثل اسم ملف محدد، أو معقدة باستخدام أحرف البدل (wildcards).
*  '''تجنب تضمين الملفات المؤقتة:'''  تنشئ العديد من برامج التحرير وأنظمة البناء ملفات مؤقتة (مثل `.tmp`، `*.log`) والتي ليست ضرورية لتشغيل البرنامج.
*  '''حماية البيانات الحساسة:'''  قد يحتوي مشروعك على ملفات تحتوي على كلمات مرور، أو مفاتيح API، أو معلومات أخرى حساسة.  تجاهل هذه الملفات يمنع تسريبها عن طريق الخطأ.
*  '''الحفاظ على نظافة المستودع:'''  يساعد على الحفاظ على مستودع [[Git]] الخاص بك منظمًا وسهل الفهم من خلال استبعاد الملفات غير الضرورية.
*  '''تجنب التعارضات:''' يمكن أن يتسبب تضمين الملفات الخاصة بكل مستخدم (مثل إعدادات IDE) في حدوث تعارضات عند العمل بشكل تعاوني.
*  '''تحسين الأداء:'''  تقليل حجم المستودع يمكن أن يحسن أداء عمليات [[Git]].


=== بناء الجملة (Syntax) ===
'''كيف يعمل ملف .gitignore؟'''


* '''سطر واحد:''' كل سطر في `.gitignore` يمثل نمطًا واحدًا. على سبيل المثال:
يحتوي ملف `.gitignore` على قائمة من الأنماط، كل نمط يمثل ملفًا أو مجلدًا يجب تجاهله. يدعم [[Git]] مجموعة متنوعة من الأنماط، بما في ذلك:


  ```
*  '''الأنماط الدقيقة:'''  تطابق اسم ملف أو مجلد محدد بالضبط.  مثال: `secrets.txt`
  temp.txt
*  '''الأحرف البدل:'''  تستخدم `*` لمطابقة أي عدد من الأحرف و `?` لمطابقة حرف واحد. مثال: `*.log`، `temp?.txt`
  *.log
*   '''المسارات:'''  يمكن تحديد مسارات نسبية أو مطلقة. مثال: `logs/` (يتجاهل مجلد `logs` في جذر المستودع).
  build/
*  '''التعليقات:'''  الأسطر التي تبدأ بـ `#` تعتبر تعليقات.
  ```
*  '''الاستثناءات:'''  يمكن استخدام `!` لإلغاء تجاهل ملف أو مجلد محدد.  مثال: `*.log` (يتجاهل جميع ملفات `.log`)، `!important.log` (لا يتجاهل `important.log`).


* '''# للتعليقات:''' يبدأ أي سطر يبدأ بعلامة `#` كتعليق وسيتم تجاهله.
'''أمثلة على محتويات ملف .gitignore'''


* '''/ (شرطة مائلة):''' تستخدم لتحديد مسار نسبي من جذر المستودع. على سبيل المثال، `build/` يتجاهل المجلد `build` الموجود في الجذر.
| الملف/المجلد | الوصف |
 
* '''\* (النجمة):'''  تستخدم كحرف بدل يمثل أي عدد من الأحرف.  على سبيل المثال، `*.log` يتجاهل جميع الملفات التي تنتهي بـ `.log`.
 
* '''? (علامة الاستفهام):''' تستخدم كحرف بدل يمثل حرفًا واحدًا.
 
* '''[ ] (الأقواس المربعة):''' تستخدم لتحديد نطاق من الأحرف. على سبيل المثال، `[abc].txt` يتجاهل الملفات `a.txt` و `b.txt` و `c.txt`.
 
* '''! (علامة التعجب):''' تستخدم لاستثناء ملف أو مجلد من نمط تم تجاهله بالفعل. على سبيل المثال:
 
  ```
  *.log
  !important.log
  ```
 
  هذا يتجاهل جميع ملفات `.log` باستثناء `important.log`.
 
== أمثلة على الاستخدام ==
 
| الملف/المجلد | النمط المستخدم في .gitignore |
|---|---|
|---|---|
| `temp.txt` | `temp.txt` |
| `*.log` | يتجاهل جميع ملفات السجل. |
| جميع ملفات `.log` | `*.log` |
| `/temp/` | يتجاهل مجلد `temp` في جذر المستودع. |
| المجلد `build` وجميع محتوياته | `build/` |
| `build/` | يتجاهل مجلد `build` (عادةً ما يحتوي على ملفات البناء). |
| ملف `config.ini` في المجلد `settings` | `settings/config.ini` |
| `*.swp` | يتجاهل ملفات التبادل الخاصة بـ Vim. |
| جميع ملفات `.DS_Store` (ملفات نظام macOS) | `.DS_Store` |
| `.DS_Store` | يتجاهل ملفات نظام التشغيل Mac. |
| ملفات السجلات المؤقتة | `*.tmp` |
| `node_modules/` | يتجاهل مجلد `node_modules` (يحتوي على تبعيات JavaScript). |
| ملفات الكائنات المترجمة | `*.o` |
| `secrets.txt` | يتجاهل ملف `secrets.txt` الذي يحتوي على معلومات حساسة. |
| ملفات التنفيذية | `*.exe` |
| `config.ini` | يتجاهل ملف `config.ini` (عادةً ما يحتوي على إعدادات خاصة بالبيئة). |
| مجلد `node_modules` (خاص بمشاريع Node.js) | `node_modules/` |
| `*.pyc` | يتجاهل ملفات بايثون المترجمة. |
| ملفات التجميع (compilation) | `bin/` |
| `__pycache__/` | يتجاهل مجلد ذاكرة التخزين المؤقت لبايثون. |
| مجلدات الـ caches | `cache/` |
| ملفات IDE (بيئة التطوير المتكاملة) | `.idea/` |
| ملفات Visual Studio | `*.suo` |
| ملفات Python bytecode | `*.pyc` |


== إنشاء ملف .gitignore ==
'''إنشاء ملف .gitignore'''


يمكنك إنشاء ملف `.gitignore` بسهولة باستخدام محرر نصوص عادي. عادةً ما يتم وضعه في جذر مستودع Git الخاص بك.  يمكنك أيضًا استخدام مواقع ويب مثل [gitignore.io](https://www.toptal.com/developers/gitignore) لإنشاء ملف `.gitignore` مخصص بناءً على لغة البرمجة أو بيئة التطوير التي تستخدمها.
يمكنك إنشاء ملف `.gitignore` باستخدام أي محرر نصوص. تأكد من أنه موجود في جذر مستودع [[Git]] الخاص بك.  يمكنك أيضًا استخدام أدوات مثل [https://www.toptal.com/developers/gitignore](https://www.toptal.com/developers/gitignore) لإنشاء ملف `.gitignore` مخصص لمشروعك.


== اعتبارات هامة ==
'''إضافة ملف .gitignore إلى المستودع'''


* '''ملفات متتبعة بالفعل:''' إذا كان ملف قد تم تتبعه بالفعل بواسطة Git، فإن إضافته إلى `.gitignore` لن يجعله Git يتوقف عن تتبعه.  في هذه الحالة، يجب عليك إزالة الملف من المستودع باستخدام الأمر `git rm --cached <filename>` ثم إضافة الملف إلى `.gitignore`.
بعد إنشاء ملف `.gitignore`، يجب عليك إضافته إلى مستودع [[Git]] الخاص بك:
* '''ترتيب الأنماط:''' ترتيب الأنماط في `.gitignore` مهم.  يتم تقييم الأنماط من الأعلى إلى الأسفل، وسيتم تطبيق أول نمط مطابق.
* '''Gitignore العالمي:''' يمكنك تكوين Git لاستخدام ملف `.gitignore` عالمي ينطبق على جميع مستودعاتك.  يمكنك القيام بذلك عن طريق تعيين متغير التكوين `core.excludesfile`.


== أدوات مفيدة ==
```bash
git add .gitignore
git commit -m "Add .gitignore file"
```


* '''gitignore.io:''' موقع ويب لإنشاء ملفات `.gitignore` مخصصة. ([https://www.toptal.com/developers/gitignore](https://www.toptal.com/developers/gitignore))
'''نصائح متقدمة'''
* '''GitHub's .gitignore repository:''' مستودع GitHub يحتوي على مجموعة كبيرة من ملفات `.gitignore` للعديد من لغات البرمجة والأطر. ([https://github.com/github/gitignore](https://github.com/github/gitignore))


== العلاقة مع استراتيجيات التداول ==
*  '''استخدم قوالب .gitignore:'''  هناك العديد من القوالب المتاحة عبر الإنترنت لمختلف لغات البرمجة وأطر العمل.
*  '''تأكد من أن ملف .gitignore الخاص بك محدث:'''  بينما يتطور مشروعك، قد تحتاج إلى إضافة أو إزالة أنماط من ملف `.gitignore` الخاص بك.
*  '''استخدم ملف .gitignore العام:'''  يمكنك تحديد ملف `.gitignore` عام للمستودع الخاص بك والذي سيتم تطبيقه على جميع الفروع.
*  '''تجنب تجاهل الملفات الضرورية:'''  تأكد من أنك لا تتجاهل الملفات التي تحتاجها لتشغيل مشروعك.


على الرغم من أن `.gitignore` هو أداة تطوير برمجيات، إلا أن فهم مبادئه يمكن أن يكون مفيدًا في عالم [[تداول الخيارات الثنائية]].  فكر في `.gitignore` كفلتر يزيل الضوضاء غير الضرورية، مما يسمح لك بالتركيز على المعلومات الهامة.  وبالمثل، في التداول، يجب عليك تصفية الإشارات الخاطئة والتركيز على الإشارات القوية.  هذا يتطلب استخدام [[التحليل الفني]]، و [[التحليل الأساسي]]، و [[إدارة المخاطر]].
'''الاستراتيجيات ذات الصلة (تداول العملات المشفرة):'''


== استراتيجيات تداول ذات صلة ==
*  [[Scalping]]
*  [[Day Trading]]
*  [[Swing Trading]]
*  [[Position Trading]]
*  [[Arbitrage]]
*  [[Trend Following]]
*  [[Mean Reversion]]
*  [[Breakout Trading]]
*  [[News Trading]]
*  [[Options Trading]]
*  [[Futures Trading]]
*  [[Hedging]]
*  [[Dollar-Cost Averaging]]
*  [[Martingale]]
*  [[Fibonacci Retracement]]


* [[استراتيجية مارتينجال]]
'''التحليل الفني وتحليل حجم التداول:'''
* [[استراتيجية المضاعفة]]
* [[استراتيجية المتوسط المتحرك]]
* [[استراتيجية مؤشر القوة النسبية (RSI)]]
* [[استراتيجية MACD]]
* [[استراتيجية بولينجر باند]]
* [[استراتيجية الاختراق]]
* [[استراتيجية الارتداد]]
* [[استراتيجية التداول المتأرجح]]
* [[استراتيجية التداول اليومي]]
* [[استراتيجية التداول الخوارزمي]]
* [[استراتيجية التحوط]]
* [[استراتيجية التداول بناءً على الأخبار]]
* [[استراتيجية التداول العكسي]]
* [[استراتيجية التداول بناءً على الأنماط]]


== التحليل الفني وحجم التداول ==
*  [[Moving Averages]]
*  [[Bollinger Bands]]
*  [[RSI]]
*  [[MACD]]
*  [[Ichimoku Cloud]]
*  [[Volume Weighted Average Price (VWAP)]]
*  [[On Balance Volume (OBV)]]
*  [[Accumulation/Distribution Line]]
*  [[Order Flow]]
*  [[Time and Sales]]
*  [[Depth of Market (DOM)]]
*  [[Candlestick Patterns]]
*  [[Chart Patterns]]
*  [[Elliott Wave Theory]]
*  [[Wyckoff Method]]


* [[الشموع اليابانية]]
'''الخلاصة'''
* [[خطوط الاتجاه]]
* [[مستويات الدعم والمقاومة]]
* [[أنماط الرسوم البيانية]]
* [[حجم التداول]]
* [[مؤشر ADX]]
* [[مؤشر ATR]]
* [[مؤشر ستوكاستيك]]
* [[مؤشر فيبوناتشي]]
* [[مؤشر Ichimoku Cloud]]
* [[مؤشر Parabolic SAR]]
* [[مؤشر Aroon]]
* [[مؤشر Keltner Channels]]
* [[مؤشر Chaikin Money Flow]]
* [[مؤشر Volume Profile]]


== خاتمة ==
ملف `.gitignore` هو أداة أساسية لأي شخص يعمل مع [[Git]].  من خلال فهم كيفية استخدامه بشكل فعال، يمكنك الحفاظ على نظافة مستودعك، وحماية بياناتك الحساسة، وتحسين أداء عمليات [[Git]].  تذكر أن ملف `.gitignore` هو جزء حيوي من سير عمل [[Git]] الخاص بك ويجب إدارته بعناية.


ملف `.gitignore` هو أداة قوية وضرورية لأي شخص يعمل مع Gitمن خلال فهم كيفية عمله واستخدامه بفعالية، يمكنك الحفاظ على نظافة مستودعك وأمانه، وتحسين سير عملك.  تذكر أن تخصيص ملف `.gitignore` لمشروعك المحدد هو المفتاح لتحقيق أقصى استفادة منه.
[[Git]]، [[GitHub]]، [[أنظمة التحكم في الإصدار]]، [[التثبيت]]، [[الالتزام]]، [[الدفع]]، [[التحكم في الإصدار]]، [[مستودع Git]]، [[التفرع]]، [[الدمج]]، [[التعاون]]، [[التحقق من الأخطاء]]، [[التوثيق]]، [[إدارة الإصدار]]، [[تاريخ التعديلات]]، [[تتبع التغييرات]]، [[تطوير البرمجيات]]، [[البرمجة]]، [[العمل الجماعي]].


[[Category:الفئة:Git]]
[[Category:الفئة:أنظمة_التحكم_في_الإصدار]].


== ابدأ التداول الآن ==
== ابدأ التداول الآن ==

Latest revision as of 01:58, 24 April 2025

Git Ignore: دليل المبتدئين

مقدمة

في عالم تطوير البرمجيات، وخاصةً عند العمل مع أنظمة التحكم في الإصدار مثل Git، غالبًا ما تواجه ملفات ومجلدات لا ترغب في تضمينها في مستودعك. هذه الملفات قد تكون مؤقتة، أو تحتوي على بيانات حساسة، أو ببساطة ليست جزءًا من الكود المصدري الفعلي. هنا يأتي دور ملف `.gitignore`. هذا الملف ضروري للحفاظ على نظافة مستودع Git الخاص بك وتجنب إرسال ملفات غير ضرورية إلى GitHub أو أي منصة استضافة أخرى. سيغطي هذا المقال كل ما تحتاج لمعرفته حول ملف `.gitignore`، بدءًا من الغرض منه وصولًا إلى كيفية استخدامه بفعالية.

ما هو ملف .gitignore؟

ملف `.gitignore` هو ملف نصي عادي يحدد الملفات والمجلدات التي يجب على Git تجاهلها. بمعنى آخر، يخبر Git ألا يتتبع هذه الملفات أو المجلدات، وبالتالي لن يتم تضمينها في عمليات التثبيت أو الالتزام أو الدفع. يتم وضعه عادةً في جذر مستودع Git الخاص بك.

لماذا نستخدم ملف .gitignore؟

هناك عدة أسباب لاستخدام ملف `.gitignore`:

  • تجنب تضمين الملفات المؤقتة: تنشئ العديد من برامج التحرير وأنظمة البناء ملفات مؤقتة (مثل `.tmp`، `*.log`) والتي ليست ضرورية لتشغيل البرنامج.
  • حماية البيانات الحساسة: قد يحتوي مشروعك على ملفات تحتوي على كلمات مرور، أو مفاتيح API، أو معلومات أخرى حساسة. تجاهل هذه الملفات يمنع تسريبها عن طريق الخطأ.
  • الحفاظ على نظافة المستودع: يساعد على الحفاظ على مستودع Git الخاص بك منظمًا وسهل الفهم من خلال استبعاد الملفات غير الضرورية.
  • تجنب التعارضات: يمكن أن يتسبب تضمين الملفات الخاصة بكل مستخدم (مثل إعدادات IDE) في حدوث تعارضات عند العمل بشكل تعاوني.
  • تحسين الأداء: تقليل حجم المستودع يمكن أن يحسن أداء عمليات Git.

كيف يعمل ملف .gitignore؟

يحتوي ملف `.gitignore` على قائمة من الأنماط، كل نمط يمثل ملفًا أو مجلدًا يجب تجاهله. يدعم Git مجموعة متنوعة من الأنماط، بما في ذلك:

  • الأنماط الدقيقة: تطابق اسم ملف أو مجلد محدد بالضبط. مثال: `secrets.txt`
  • الأحرف البدل: تستخدم `*` لمطابقة أي عدد من الأحرف و `?` لمطابقة حرف واحد. مثال: `*.log`، `temp?.txt`
  • المسارات: يمكن تحديد مسارات نسبية أو مطلقة. مثال: `logs/` (يتجاهل مجلد `logs` في جذر المستودع).
  • التعليقات: الأسطر التي تبدأ بـ `#` تعتبر تعليقات.
  • الاستثناءات: يمكن استخدام `!` لإلغاء تجاهل ملف أو مجلد محدد. مثال: `*.log` (يتجاهل جميع ملفات `.log`)، `!important.log` (لا يتجاهل `important.log`).

أمثلة على محتويات ملف .gitignore

| الملف/المجلد | الوصف | |---|---| | `*.log` | يتجاهل جميع ملفات السجل. | | `/temp/` | يتجاهل مجلد `temp` في جذر المستودع. | | `build/` | يتجاهل مجلد `build` (عادةً ما يحتوي على ملفات البناء). | | `*.swp` | يتجاهل ملفات التبادل الخاصة بـ Vim. | | `.DS_Store` | يتجاهل ملفات نظام التشغيل Mac. | | `node_modules/` | يتجاهل مجلد `node_modules` (يحتوي على تبعيات JavaScript). | | `secrets.txt` | يتجاهل ملف `secrets.txt` الذي يحتوي على معلومات حساسة. | | `config.ini` | يتجاهل ملف `config.ini` (عادةً ما يحتوي على إعدادات خاصة بالبيئة). | | `*.pyc` | يتجاهل ملفات بايثون المترجمة. | | `__pycache__/` | يتجاهل مجلد ذاكرة التخزين المؤقت لبايثون. |

إنشاء ملف .gitignore

يمكنك إنشاء ملف `.gitignore` باستخدام أي محرر نصوص. تأكد من أنه موجود في جذر مستودع Git الخاص بك. يمكنك أيضًا استخدام أدوات مثل [1](https://www.toptal.com/developers/gitignore) لإنشاء ملف `.gitignore` مخصص لمشروعك.

إضافة ملف .gitignore إلى المستودع

بعد إنشاء ملف `.gitignore`، يجب عليك إضافته إلى مستودع Git الخاص بك:

```bash git add .gitignore git commit -m "Add .gitignore file" ```

نصائح متقدمة

  • استخدم قوالب .gitignore: هناك العديد من القوالب المتاحة عبر الإنترنت لمختلف لغات البرمجة وأطر العمل.
  • تأكد من أن ملف .gitignore الخاص بك محدث: بينما يتطور مشروعك، قد تحتاج إلى إضافة أو إزالة أنماط من ملف `.gitignore` الخاص بك.
  • استخدم ملف .gitignore العام: يمكنك تحديد ملف `.gitignore` عام للمستودع الخاص بك والذي سيتم تطبيقه على جميع الفروع.
  • تجنب تجاهل الملفات الضرورية: تأكد من أنك لا تتجاهل الملفات التي تحتاجها لتشغيل مشروعك.

الاستراتيجيات ذات الصلة (تداول العملات المشفرة):

التحليل الفني وتحليل حجم التداول:

الخلاصة

ملف `.gitignore` هو أداة أساسية لأي شخص يعمل مع Git. من خلال فهم كيفية استخدامه بشكل فعال، يمكنك الحفاظ على نظافة مستودعك، وحماية بياناتك الحساسة، وتحسين أداء عمليات Git. تذكر أن ملف `.gitignore` هو جزء حيوي من سير عمل Git الخاص بك ويجب إدارته بعناية.

Git، GitHub، أنظمة التحكم في الإصدار، التثبيت، الالتزام، الدفع، التحكم في الإصدار، مستودع Git، التفرع، الدمج، التعاون، التحقق من الأخطاء، التوثيق، إدارة الإصدار، تاريخ التعديلات، تتبع التغييرات، تطوير البرمجيات، البرمجة، العمل الجماعي..

ابدأ التداول الآن

سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)

انضم إلى مجتمعنا

اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين

Баннер