نوشتن پیام های متعهد روشن ، مختصر و معنی دار برای یک تاریخچه خوب و مستند

📌 فرمول یک پیام متعهد خوب
یک پیام متعهد باید به شرح زیر باشد:
: (max 50-72 chars)
📍 1. از انواع متعارف استفاده کنید
پیام متعهد خود را با یک شروع کنید نوع مرتکب، به دنبال آن کوتاه خلاصه:
نوع | مثال استفاده |
---|---|
نشان | feat: add date filtering for GitHub activity |
ثابت کردن | fix: handle API failure when GitHub is down |
اصلاح کننده | refactor: optimize API response formatting |
اسناد | docs: update README with API usage guide |
کوشش | chore: add .gitignore and remove logs |
سبک | style: format code with Black |
تست | test: add unit tests for date filtering |
📍 2. خلاصه واضح و مختصر بنویسید
- آن را در درون نگه دارید 50-72 نویسهبشر
- استفاده کردن روحیه ضروری (به عنوان مثال ، “افزودن” ، “رفع” ، “بروزرسانی” به جای “اضافه شده” یا “رفع”).
- از کلمات غیر ضروری خودداری کنید.
✅ مثالهای خوب
feat: add API endpoint for fetching GitHub activity
fix: resolve bug in date filtering logic
docs: update README with setup instructions
❌ نمونه های بد
added new API for activity ❌ (Avoid past tense)
fixing bug in date filtering ❌ (Not in imperative form)
Updated README ❌ (Vague, what was updated?)
📍 3. توضیحات مفصل اضافه کنید (اختیاری)
اگر تعهد به متن بیشتری نیاز دارد ، اضافه کنید قسمت بدنه:
feat: add GitHub activity API
- Fetches user events from GitHub API
- Supports filtering by single date or date range
- Caches results for faster responses
Closes #12
از این برای:
✅ تغییرات پیچیده
✅ رفع اشکال نیاز به توضیح
✅ شکستن تغییرات
📍 4. شماره های مرجع و PRS
اگر تعهد به یک مسئله مرتبط است یا درخواست کشش دارد ، آن را مرجع کنید:
fix: resolve date filtering issue
Closes #22
یا
feat: add daily cron job for auto-fetching
Related to #15
5 📍. برای کمک های تیمی از “همکاری با هم” استفاده کنید
اگر چندین توسعه دهنده روی تعهد کار می کردند ، آنها را تصدیق کنید:
feat: add webhook support for GitHub activity
Co-authored-by: Edgar Gulay
Co-authored-by: John Doe
📍 6. تاریخ را تمیز نگه دارید
🚫 از این پیام های متعهد خودداری کنید:
wip: working on it ❌ (What are you working on?)
fix: bug fixes ❌ (Which bug? Be specific)
temp: test commit ❌ (Don’t commit temporary stuff)
✅ در عوض ، مانند این بازنویسی کنید:
fix: correct timestamp format in API response
🚀 جایزه: پیام های متعهد را با قلاب git خودکار کنید
به اجرای قوانین پیام تعهد، استفاده از a قلاب پیش از ساز:
echo 'exec < /dev/tty && git cz --hook || true' > .git/hooks/commit-msg
chmod +x .git/hooks/commit-msg
این باعث می شود هر بار که مرتکب شوید ، یک پیام به درستی فرمت شده وارد کنید.
💡 خلاصه برگه تقلب
✅ انجام دهید | ❌ نکن |
---|---|
استفاده کردن ضرورت (fix: به جای fixed: ) |
از پیام های مبهم استفاده کنید (Updated stuff ) |
نگه داشتن خلاصه زیر 72 بار | پیام های طولانی و غیرقابل خواندن بنویسید |
اضافه کردن a در صورت لزوم بدن دقیق | خلاصه را اضافه کنید |
مرجع شماره ها و روابط عمومی وقتی مرتبط باشد | ترک مرتکب غیر قابل توضیح |
استفاده کردن انواع متعارف | از اصطلاحات عمومی مانند استفاده کنید misc:
|
🚀 مثال نهایی
feat: implement GitHub activity summary API
- Fetches user events from GitHub API
- Filters activity based on date or date range
- Returns structured JSON response
Closes #1
🎯 سخنان پایانی: گاهی اوقات باید اجازه دهید آتش بسوزد …