مولّد سجلّ التغييرات

كتابة سجلات التغييرات يدويًا تعني تمشيط سجل git log عند وقت الإصدار. يتخطى هذا المولّد تلك الخطوة: ألصق العناصر التي تريد نشرها مباشرةً ضمن الفئة الصحيحة، Added وChanged وFixed وRemoved، وأضف رقم الإصدار والتاريخ، فيخرج قسم Markdown متوافقًا مع Keep a Changelog وجاهزًا لإضافته إلى CHANGELOG.md. يمكن أيضًا الحصول على المحتوى نفسه كنص عادي. لا يقرأ هذا المولّد سجل git الخاص بك؛ فأنت من يقرر ما يدخل في الإصدار.

كيفية إنشاء سجلّ تغييرات

  1. 1

    أدخل الإصدار والتاريخ

    اكتب رقم الإصدار، مثل 1.2.0. اترك التاريخ فارغًا لاستخدام تاريخ اليوم.

  2. 2

    أضف العناصر حسب الفئة

    ألصق ملاحظات الإصدار ضمن Added وChanged وFixed وRemoved، عنصرًا واحدًا في كل سطر. تُتخطى الفئات الفارغة.

  3. 3

    اختر صيغة الإخراج

    Markdown (ترويسة `## [الإصدار] - التاريخ` مع أقسام بأسلوب `### Added`) أو نص عادي (ترويسة `v1.2.0 (التاريخ)` مع قوائم نقطية).

  4. 4

    انسخ سجلّ التغييرات

    ألصق الناتج فوق الإدخال السابق في ملف CHANGELOG.md.

الفئات الأربع

يصدر المولّد أربعة أقسام بالضبط، وبهذا الترتيب: Added وChanged وFixed وRemoved.

الفئة متى تُستخدم
Added ميزات جديدة
Changed تغييرات على وظائف موجودة
Fixed إصلاحات للأخطاء
Removed ميزات تمت إزالتها

يتضمن اصطلاح Keep a Changelog أيضًا أقسام Deprecated وSecurity وBreaking. لا يملك المولّد صناديق لها؛ يمكنك إضافة هذه الأقسام يدويًا بعد لصق الناتج.

مثال على الإخراج (Markdown)

## [1.4.0] - 2026-04-18

### Added
- Dark mode support for the dashboard (#312)
- CSV export on the users page (#318)

### Changed
- Upgrade React to 18.3 (#320)
- Pagination now defaults to 50 items per page (#322)

### Fixed
- Crash when editing users with a null email (#319)
- Timezone offset in scheduled reports (#321)

### Removed
- Legacy reports API (#324)

مثال على الإخراج (نص عادي)

v1.4.0 (2026-04-18)
ADDED:
  • Dark mode support for the dashboard (#312)
  • CSV export on the users page (#318)
CHANGED:
  • Upgrade React to 18.3 (#320)
  • Pagination now defaults to 50 items per page (#322)
FIXED:
  • Crash when editing users with a null email (#319)
  • Timezone offset in scheduled reports (#321)
REMOVED:
  • Legacy reports API (#324)

نصائح

  • عنصر واحد في كل سطر. كل سطر في الصندوق يصبح نقطة في القائمة. تُتخطى الصناديق الفارغة، ويمكنك ترك فئة كاملة دون إدخال.
  • اكتب العناصر كأسطر سجلّ التغييرات لا كملاحظات سجل. العبارة الأمرية “fix: handle null email on edit” تبدو جيدة كنقطة.
  • أشر إلى أرقام القضايا/طلبات السحب ليتمكن القراء من التعمق: (#319) أو [#319](link) في الناتج.
  • إصدار واحد لكل إدخال: لا تدمج إصدارين في كتلة واحدة حتى لو كان الفارق بينهما يومًا واحدًا.
  • منشور أم غير منشور: أبقِ قسم [Unreleased] في الأعلى مع التغييرات المخصصة للإصدار القادم، وانقلها إلى قسم مؤرخ عند الإصدار.

الأسئلة الشائعة

اصطلاحات Keep a Changelog (keepachangelog.com): ترويسة إصدار مع تاريخ وقوائم نقطية مجمعة. يصدر المولّد أقسام Added وChanged وFixed وRemoved؛ أما الأقسام القياسية الأخرى (Deprecated وSecurity وBreaking) فتتبع الاصطلاح نفسه إذا أضفتها يدويًا.

يصدر المولّد الأقسام الأربعة الرئيسية: Added وChanged وFixed وRemoved. لا توجد صناديق مخصصة لـ Deprecated أو Security أو Breaking، لكن يمكنك إضافة هذه الأقسام يدويًا إلى النص المولّد قبل لصقه.

المولّد أداة واجهة أحادية الاستخدام؛ وللأتمتة استخدم أداة سطر أوامر مثل standard-version أو release-please أو semantic-release، وهي تنفذ الأنماط نفسها في خط الأنابيب لديك.

لا. لا يقرأ مستودعك ولا رسائل الالتزام لديك؛ فأنت تلصق العناصر بنفسك. النص الذي تكتبه يُرسَل إلى الخادم لبناء الناتج، ولا يُخزَّن ولا يُشارَك.

أدوات ذات صلة