Align docs/analysis files on one structure: metadata header, unnumbered "مقدمه", numbered sections, and a final "نکات و پرسشهای باز" section. - user-story.md: add "نیازمندیهای مرتبط" (FR refs) to each US, number the sections, and update the last-updated date - requirements-specification.md: define "گزارشدهنده" and align the closing section name - activity.md: add metadata header and مقدمه, drop English actor labels, give each diagram an AD-NN id, and add a status line - CONTRIBUTING.md: record the analysis docs standard as section ۷ - features/: Gherkin scenarios for US-01, US-05 and US-15
4.4 KiB
راهنمای کوتاه همکاری روی گیتهاب
مخزن پروژه:
https://github.com/AmirAref/paya-university-fault-system
چون چند نفری روی پروژه کار میکنیم، هیچکس نباید مستقیم روی برنچ main کار کند.
هر نفر یک برنچ شخصی میسازد و فقط روی همان کار میکند.
۱. کلون کردن مخزن (فقط یکبار)
git clone https://github.com/AmirAref/paya-university-fault-system.git
cd paya-university-fault-system
۲. ساخت برنچ شخصی
نام برنچ را اینطور بگذارید (مثال):
git checkout -b aref-tasks
پیشنهاد نامگذاری:
aref-tasksarshia-tasksreza-tasks
یا هر نامی که مشخص کند مال شماست.
۳. کار کردن و ذخیره تغییرات
بعد از هر تغییر مهم:
git status # ببین چه فایلهایی تغییر کردهاند
git add . # همه تغییرات را اضافه کن
git commit -m "توضیح کوتاه کار انجامشده"
مثال پیام کامیت خوب:
"افزودن بخش بازیگران به user-story.md""اصلاح توضیحات نیازمندیهای عملکردی"
۴. ارسال برنچ به گیتهاب
git push -u origin aref-tasks
(فقط بار اول -u لازم است. دفعات بعدی فقط git push کافی است.)
۵. ساخت Pull Request (پیشنهاد ادغام)
- برو به صفحه مخزن روی گیتهاب
- روی دکمه Compare & pull request کلیک کن
- عنوان و توضیح کوتاه بنویس
- Create pull request را بزن
یکی از اعضا (ترجیحاً بازبین همان بخش) PR را بررسی و در صورت تأیید Merge میکند.
۶. رسم نمودار با Mermaid
برای رسم نمودارها (مثل Class Diagram) از ابزار Mermaid استفاده کنید.
نمودار بهصورت متن نوشته میشود، بنابراین تغییرات آن در Git قابل مشاهده و بازبینی است. گیتهاب این نمودارها را مستقیم در فایلهای .md نمایش میدهد.
مثال یک Class Diagram:
classDiagram
class Report {
+id: int
+status: string
+submit()
}
class Technician {
+name: string
+assign(report)
}
Technician "1" --> "*" Report : repairs
نکات مهم
- همیشه قبل از شروع کار جدید، آخرین تغییرات
CONTRIBUTINGmainرا بگیر:git checkout main git pull git checkout aref-tasks git merge main - پیام کامیت را واضح و کوتاه بنویس.
- فقط روی برنچ خودت کار کن.
- اگر گیج شدی یا ارور گرفتی، از بقیه بپرس؛ نگذار مشکل بزرگ شود.
۷. استاندارد مستندات تحلیل (docs/analysis/)
همه فایلهای این پوشه باید ساختار یکسان داشته باشند:
- سربرگ: عنوان
#، سپستهیهکننده،بازبینوآخرین بهروزرسانی(تاریخ شمسی با ارقام فارسی)، و بعد خط---. - بخشها: بخش «مقدمه» بدون شماره؛ بخشهای اصلی با شماره (
## ۱.)؛ آخرین بخش همیشه «نکات و پرسشهای باز» است. - پایان: خط
---و سپس**وضعیت سند:** .... - شناسهها: داستانها
US-NN، نیازمندیهای کارکردیFR-NN، نیازمندیهای غیرکارکردیNFR-NN، نمودارهاAD-NN. - نام بازیگران: فقط نام فارسی؛ دانشجو، استاد، کارمند تأسیسات، تعمیرکار، مدیر، کاربر سیستم. «گزارشدهنده» یعنی دانشجو یا استاد.
- ارجاع: هر داستان فیلد «نیازمندیهای مرتبط» دارد و هر نمودار به داستانهای خود ارجاع میدهد.
اگر مرحلهای را متوجه نشدید، تو گروهمون بپرسید تا سریع حلش کنیم.