Git log: Difference between revisions

From binaryoption
Jump to navigation Jump to search
Баннер1
(@pipegas_WP)
 
(@pipegas_WP)
 
Line 1: Line 1:
=== Git Log: دليل شامل للمبتدئين ===
## Git Log: دليل شامل للمبتدئين


'''مقدمة'''
'''مقدمة'''


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


== ما هو Git Log؟ ==
'''ما هو Git Log؟'''


'''Git log''' هو أمر سطر أوامر يعرض سجل التغييرات (commits) في مستودع [[Git]]. كل تغيير يتم إجراؤه على المشروع يجب أن يتم تسجيله كـ [[Commit]]، ويحتوي كل commit على معلومات مهمة مثل:
`git log` هو أمر سطر أوامر يعرض سجل الالتزامات (commits) في مستودع Git. كل التزام (commit) يمثل مجموعة من التغييرات التي تم إجراؤها على الملفات في المستودع. يحتوي كل التزام على معلومات مهمة مثل:


*  '''Hash (SHA-1):''' معرف فريد لكل commit.
*  '''هاش الالتزام (Commit Hash):''' معرف فريد للالتزام.
*  '''Author (المؤلف):''' اسم وعنوان البريد الإلكتروني للشخص الذي قام بالـ commit.
*  '''المؤلف (Author):''' اسم وعنوان البريد الإلكتروني للشخص الذي قام بالالتزام.
*  '''Date (التاريخ):''' تاريخ ووقت الـ commit.
*  '''التاريخ (Date):''' تاريخ ووقت الالتزام.
*  '''Message (الرسالة):''' وصف موجز للتغييرات التي تم إجراؤها.
*  '''رسالة الالتزام (Commit Message):''' وصف موجز للتغييرات التي تم إجراؤها في الالتزام.


== استخدام Git Log الأساسي ==
'''الاستخدام الأساسي لـ Git Log'''


ببساطة، كتابة الأمر '''git log''' في سطر الأوامر سيعرض سجل الـ commits بترتيب زمني عكسي (أحدث commit أولاً).
أبسط طريقة لاستخدام `git log` هي تشغيله بدون أي خيارات. سيؤدي ذلك إلى عرض سجل الالتزامات بترتيب زمني عكسي (أحدث التزامات أولاً).
 
'''مثال:'''


```
```
Line 24: Line 22:
```
```


سيعرض هذا قائمة طويلة من الـ commits مع المعلومات المذكورة أعلاه. قد يكون هذا الإخراج طويلًا جدًا، لذا توجد العديد من الخيارات لتصفية وعرض المعلومات بطرق مختلفة.
سيظهر لك هذا قائمة طويلة من الالتزامات، مع تفاصيل مثل الهاش، والمؤلف، والتاريخ، ورسالة الالتزام.
 
== خيارات Git Log الشائعة ==
 
'''Git log''' يوفر العديد من الخيارات لتخصيص الإخراج. إليك بعض الخيارات الأكثر استخدامًا:


'''-n <عدد> :''' لعرض عدد معين من الـ commits. على سبيل المثال، '''git log -n 5''' سيعرض آخر 5 commits.
'''خيارات Git Log الشائعة'''
*  '''--oneline :''' لعرض كل commit في سطر واحد، مع الـ hash والرسالة.
*  '''--graph :''' لعرض رسم بياني يوضح تاريخ الفروع (branches) والدمج (merges).
*  '''--author=<الاسم> :''' لعرض الـ commits التي قام بها مؤلف معين. على سبيل المثال، '''git log --author="John Doe"'''.
*  '''--since=<التاريخ> :''' لعرض الـ commits التي تمت بعد تاريخ معين. على سبيل المثال، '''git log --since="2023-10-26"'''.
*  '''--until=<التاريخ> :''' لعرض الـ commits التي تمت قبل تاريخ معين.
*  '''--grep=<الكلمة> :''' للبحث عن commits تحتوي رسالتها على كلمة معينة.
*  '''--stat :''' لعرض إحصائيات حول الملفات التي تم تغييرها في كل commit.
*  '''--patch :''' لعرض الفروق (diffs) بين كل commit والـ commit السابق له.
*  '''--pretty=<التنسيق> :''' لتحديد تنسيق الإخراج. يمكن استخدام تنسيقات مختلفة مثل '''short'''، '''medium'''، '''full'''، أو تنسيقات مخصصة.


{| class="wikitable"
يحتوي `git log` على العديد من الخيارات التي تسمح لك بتخصيص الإخراج. فيما يلي بعض الخيارات الأكثر شيوعًا:
|+ خيارات Git Log الشائعة
|-
| الخيار || الوصف
|-
| -n <عدد> || عرض عدد معين من الـ commits
|-
| --oneline || عرض الـ commits في سطر واحد
|-
| --graph || عرض رسم بياني لتاريخ الفروع
|-
| --author=<الاسم> || عرض الـ commits لمؤلف معين
|-
| --since=<التاريخ> || عرض الـ commits بعد تاريخ معين
|-
| --until=<التاريخ> || عرض الـ commits قبل تاريخ معين
|-
| --grep=<الكلمة> || البحث عن commits برسالة تحتوي على كلمة معينة
|}


== أمثلة عملية ==
*  '''`-n <عدد>`:''' يعرض عددًا محددًا من الالتزامات. على سبيل المثال، `git log -n 5` سيعرض آخر 5 التزامات.
*  '''`--oneline` :''' يعرض كل التزام في سطر واحد، مما يجعل الإخراج أكثر إيجازًا.
*  '''`--graph` :''' يعرض رسمًا بيانيًا لفروع المستودع وعلاقاتها. مفيد جداً لفهم [[استراتيجيات الفروع]].
*  '''`--decorate` :''' يعرض أسماء الفروع والعلامات (tags) التي تشير إلى الالتزامات.
*  '''`--author=<اسم>`:''' يعرض الالتزامات التي قام بها مؤلف محدد.
*  '''`--grep=<نص>`:''' يبحث عن التزامات تحتوي على نص معين في رسالة الالتزام.
*  '''`--since=<تاريخ>` و`--until=<تاريخ>`:''' يعرض الالتزامات التي تم إجراؤها في فترة زمنية محددة.
*  '''`--stat` :''' يعرض إحصائيات حول الملفات التي تم تغييرها في كل التزام، مثل عدد الأسطر المضافة والمحذوفة.
*  '''`--patch` أو `-p` :''' يعرض التغييرات الفعلية التي تم إجراؤها في كل التزام (diff).


'''عرض آخر 3 commits بتنسيق مختصر:'''
'''أمثلة عملية'''


```
| الأمر | الوصف |
git log -n 3 --oneline
|---|---|
```
| `git log -n 3 --oneline` | يعرض آخر 3 التزامات في سطر واحد لكل التزام. |
| `git log --author="John Doe"` | يعرض جميع الالتزامات التي قام بها John Doe. |
| `git log --grep="fix bug"` | يعرض جميع الالتزامات التي تحتوي رسالة الالتزام الخاصة بها على كلمة "fix bug". |
| `git log --since="2023-01-01" --until="2023-03-31"` | يعرض الالتزامات التي تم إجراؤها بين 1 يناير 2023 و 31 مارس 2023. |
| `git log --stat` | يعرض إحصائيات حول الملفات المتغيرة في كل التزام. |
| `git log -p` | يعرض التغييرات (diff) لكل التزام. |


'''عرض الـ commits التي قام بها John Doe منذ عام 2023:'''
'''تخصيص تنسيق الإخراج'''


```
يمكنك تخصيص تنسيق إخراج `git log` باستخدام الخيار `--pretty`. هناك عدة تنسيقات مسبقة (predefined formats) يمكنك استخدامها، مثل `oneline` و `short` و `medium` و `full` و `fuller`. يمكنك أيضًا تحديد تنسيق مخصص باستخدام سلسلة التنسيق الخاصة بك.
git log --author="John Doe" --since="2023-01-01"
```


*  '''عرض الـ commits التي تحتوي رسالتها على كلمة "fix":'''
على سبيل المثال:


```
```
git log --grep="fix"
git log --pretty=format:"%h - %an, %ar : %s"
```
```


== Git Log والتحليل الفني ==
سيؤدي هذا إلى عرض الهاش المختصر، واسم المؤلف، ووقت الالتزام النسبي، ورسالة الالتزام.
 
فهم '''Git log''' يمكن أن يساعد في التحليل الفني للمشروع. على سبيل المثال، يمكن استخدام '''Git log''' لتحديد:


'''النقاط التي تم فيها إضافة ميزات جديدة:''' يمكن أن يشير هذا إلى فترات من النمو والتطوير.
'''Git Log والتحليل الفني'''
*  '''النقاط التي تم فيها تصحيح الأخطاء:''' يمكن أن يشير هذا إلى نقاط ضعف في الكود.
*  '''الأنماط في الـ commits:''' يمكن أن يشير هذا إلى مدى نشاط الفريق وتوزيعه على المهام.


== Git Log وتداول الخيارات الثنائية (علاقة غير مباشرة) ==
فهم سجل التغييرات باستخدام `git log` يمكن أن يكون مفيدًا في سياقات متعددة. على سبيل المثال، في [[التحليل الفني]]، يمكن استخدام `git log` لتحديد:


على الرغم من أن '''Git log''' أداة لتطوير البرمجيات، إلا أنه يمكن استخلاص بعض المفاهيم التي قد تكون مفيدة في [[تداول الخيارات الثنائية]]. فكما أن '''Git log''' يساعد في تتبع تاريخ التغييرات واتخاذ قرارات مستنيرة بناءً على هذه التغييرات، فإن تحليل [[الرسوم البيانية]] و[[مؤشرات التحليل الفني]] في تداول الخيارات الثنائية يساعد في تتبع تاريخ الأسعار واتخاذ قرارات مستنيرة بناءً على هذا التاريخ. كلاهما يتطلب فهمًا للاتجاهات والأنماط لاتخاذ قرارات فعالة.
'''نقاط الدعم والمقاومة (Support and Resistance Levels):''' يمكن أن تشير التغييرات الكبيرة في الكود إلى نقاط تحول محتملة في المشروع.
'''الاتجاهات (Trends):''' يمكن أن يساعد تتبع الالتزامات في تحديد الاتجاهات في تطوير المشروع.
*  '''أنماط التكرار (Recurring Patterns):''' يمكن أن يكشف `git log` عن أنماط متكررة في التغييرات، مما قد يشير إلى مشاكل أو فرص محتملة.


== استراتيجيات متقدمة ==
'''Git Log وتحليل حجم التداول (Volume Analysis)'''


*  '''Git Bisect:''' أداة للبحث عن الـ commit الذي تسبب في خطأ.
على الرغم من أن `git log` لا يوفر معلومات مباشرة عن حجم التداول، إلا أنه يمكن استخدامه بشكل غير مباشر لفهم نشاط التطوير. يمكن أن يشير عدد الالتزامات في فترة زمنية معينة إلى مستوى النشاط في المشروع. هذا النشاط يمكن أن يكون مؤشرًا على [[تحليل حجم التداول]] في سياق [[تداول العملات المشفرة]].
*  '''Git Rebase:''' لتغيير تاريخ الـ commits.
*  '''Git Cherry-pick:''' لاختيار الـ commit وتطبيقه على فرع آخر.


== روابط ذات صلة ==
'''مواضيع ذات صلة'''


*  [[Git]]
*  [[Git]]
*  [[Commit]]
*  [[Git Branching]]
*  [[Branch]]
*  [[Git Merge]]
*  [[Merge]]
*  [[Git Rebase]]
*  [[Remote]]
*  [[Git Commit]]
*  [[Repository]]
*  [[Git Remote]]
*  [[Diff]]
*  [[Git Clone]]
*  [[Stash]]
*  [[Git Push]]
*  [[Revert]]
*  [[Git Pull]]
*  [[Reset]]
*  [[Git Stash]]
*  [[Clone]]
*  [[Git Reset]]
*  [[Push]]
*  [[Git Checkout]]
*  [[Pull]]
*  [[Git Tag]]
*  [[Fetch]]
*  [[أنظمة التحكم في الإصدار]]
*  [[Tag]]
*  [[GitHub]]
*  [[GitLab]]


== استراتيجيات التحليل الفني وحجم التداول ==
'''استراتيجيات التداول ذات الصلة'''


*  [[Moving Average]]
*  [[استراتيجية الاختراق]]
*  [[Relative Strength Index (RSI)]]
*  [[استراتيجية المتوسطات المتحركة]]
*  [[MACD]]
*  [[استراتيجية بولينجر باند]]
*  [[Bollinger Bands]]
*  [[استراتيجية مؤشر القوة النسبية]]
*  [[Fibonacci Retracement]]
*  [[استراتيجية MACD]]
*  [[Ichimoku Cloud]]
*  [[استراتيجية التداول المتأرجح]]
*  [[Volume Weighted Average Price (VWAP)]]
*  [[استراتيجية التداول اليومي]]
*  [[On Balance Volume (OBV)]]
*  [[استراتيجية المضاربة]]
*  [[Average True Range (ATR)]]
*  [[استراتيجية التداول بناءً على الأخبار]]
*  [[Elliott Wave Theory]]
*  [[استراتيجية التداول الخوارزمي]]
*  [[Candlestick Patterns]]
*  [[التحليل الأساسي]]
*  [[Support and Resistance]]
*  [[إدارة المخاطر]]
*  [[Trend Lines]]
*  [[تنويع المحفظة]]
*  [[Chart Patterns]]
*  [[تداول العملات المشفرة]]
*  [[Money Management]]
*  [[التحليل الفني المتقدم]]


'''خاتمة'''
'''خاتمة'''


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


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


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

Latest revision as of 01:58, 24 April 2025

    1. Git Log: دليل شامل للمبتدئين

مقدمة

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

ما هو Git Log؟

`git log` هو أمر سطر أوامر يعرض سجل الالتزامات (commits) في مستودع Git. كل التزام (commit) يمثل مجموعة من التغييرات التي تم إجراؤها على الملفات في المستودع. يحتوي كل التزام على معلومات مهمة مثل:

  • هاش الالتزام (Commit Hash): معرف فريد للالتزام.
  • المؤلف (Author): اسم وعنوان البريد الإلكتروني للشخص الذي قام بالالتزام.
  • التاريخ (Date): تاريخ ووقت الالتزام.
  • رسالة الالتزام (Commit Message): وصف موجز للتغييرات التي تم إجراؤها في الالتزام.

الاستخدام الأساسي لـ Git Log

أبسط طريقة لاستخدام `git log` هي تشغيله بدون أي خيارات. سيؤدي ذلك إلى عرض سجل الالتزامات بترتيب زمني عكسي (أحدث التزامات أولاً).

``` git log ```

سيظهر لك هذا قائمة طويلة من الالتزامات، مع تفاصيل مثل الهاش، والمؤلف، والتاريخ، ورسالة الالتزام.

خيارات Git Log الشائعة

يحتوي `git log` على العديد من الخيارات التي تسمح لك بتخصيص الإخراج. فيما يلي بعض الخيارات الأكثر شيوعًا:

  • `-n <عدد>`: يعرض عددًا محددًا من الالتزامات. على سبيل المثال، `git log -n 5` سيعرض آخر 5 التزامات.
  • `--oneline` : يعرض كل التزام في سطر واحد، مما يجعل الإخراج أكثر إيجازًا.
  • `--graph` : يعرض رسمًا بيانيًا لفروع المستودع وعلاقاتها. مفيد جداً لفهم استراتيجيات الفروع.
  • `--decorate` : يعرض أسماء الفروع والعلامات (tags) التي تشير إلى الالتزامات.
  • `--author=<اسم>`: يعرض الالتزامات التي قام بها مؤلف محدد.
  • `--grep=<نص>`: يبحث عن التزامات تحتوي على نص معين في رسالة الالتزام.
  • `--since=<تاريخ>` و`--until=<تاريخ>`: يعرض الالتزامات التي تم إجراؤها في فترة زمنية محددة.
  • `--stat` : يعرض إحصائيات حول الملفات التي تم تغييرها في كل التزام، مثل عدد الأسطر المضافة والمحذوفة.
  • `--patch` أو `-p` : يعرض التغييرات الفعلية التي تم إجراؤها في كل التزام (diff).

أمثلة عملية

| الأمر | الوصف | |---|---| | `git log -n 3 --oneline` | يعرض آخر 3 التزامات في سطر واحد لكل التزام. | | `git log --author="John Doe"` | يعرض جميع الالتزامات التي قام بها John Doe. | | `git log --grep="fix bug"` | يعرض جميع الالتزامات التي تحتوي رسالة الالتزام الخاصة بها على كلمة "fix bug". | | `git log --since="2023-01-01" --until="2023-03-31"` | يعرض الالتزامات التي تم إجراؤها بين 1 يناير 2023 و 31 مارس 2023. | | `git log --stat` | يعرض إحصائيات حول الملفات المتغيرة في كل التزام. | | `git log -p` | يعرض التغييرات (diff) لكل التزام. |

تخصيص تنسيق الإخراج

يمكنك تخصيص تنسيق إخراج `git log` باستخدام الخيار `--pretty`. هناك عدة تنسيقات مسبقة (predefined formats) يمكنك استخدامها، مثل `oneline` و `short` و `medium` و `full` و `fuller`. يمكنك أيضًا تحديد تنسيق مخصص باستخدام سلسلة التنسيق الخاصة بك.

على سبيل المثال:

``` git log --pretty=format:"%h - %an, %ar : %s" ```

سيؤدي هذا إلى عرض الهاش المختصر، واسم المؤلف، ووقت الالتزام النسبي، ورسالة الالتزام.

Git Log والتحليل الفني

فهم سجل التغييرات باستخدام `git log` يمكن أن يكون مفيدًا في سياقات متعددة. على سبيل المثال، في التحليل الفني، يمكن استخدام `git log` لتحديد:

  • نقاط الدعم والمقاومة (Support and Resistance Levels): يمكن أن تشير التغييرات الكبيرة في الكود إلى نقاط تحول محتملة في المشروع.
  • الاتجاهات (Trends): يمكن أن يساعد تتبع الالتزامات في تحديد الاتجاهات في تطوير المشروع.
  • أنماط التكرار (Recurring Patterns): يمكن أن يكشف `git log` عن أنماط متكررة في التغييرات، مما قد يشير إلى مشاكل أو فرص محتملة.

Git Log وتحليل حجم التداول (Volume Analysis)

على الرغم من أن `git log` لا يوفر معلومات مباشرة عن حجم التداول، إلا أنه يمكن استخدامه بشكل غير مباشر لفهم نشاط التطوير. يمكن أن يشير عدد الالتزامات في فترة زمنية معينة إلى مستوى النشاط في المشروع. هذا النشاط يمكن أن يكون مؤشرًا على تحليل حجم التداول في سياق تداول العملات المشفرة.

مواضيع ذات صلة

استراتيجيات التداول ذات الصلة

خاتمة

`git log` هو أداة قوية لفهم تاريخ مشروعك. من خلال تعلم كيفية استخدام الخيارات المختلفة، يمكنك تخصيص الإخراج للحصول على المعلومات التي تحتاجها. فهم سجل التغييرات يمكن أن يساعدك في تتبع الأخطاء، وفهم تطور المشروع، واتخاذ قرارات مستنيرة بشأن المستقبل. تذكر أن الممارسة هي المفتاح لإتقان `git log` وأي أداة أخرى في Git.

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

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

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

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

Баннер