mirror of
https://github.com/AmirAref/paya-university-fault-system.git
synced 2026-11-03 06:39:38 +00:00
407596264f
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
127 lines
4.4 KiB
Markdown
127 lines
4.4 KiB
Markdown
|
||
# راهنمای کوتاه همکاری روی گیتهاب
|
||
|
||
مخزن پروژه:
|
||
https://github.com/AmirAref/paya-university-fault-system
|
||
|
||
چون چند نفری روی پروژه کار میکنیم، **هیچکس نباید مستقیم روی برنچ `main` کار کند**.
|
||
هر نفر یک برنچ شخصی میسازد و فقط روی همان کار میکند.
|
||
|
||
|
||
|
||
## ۱. کلون کردن مخزن (فقط یکبار)
|
||
|
||
```bash
|
||
git clone https://github.com/AmirAref/paya-university-fault-system.git
|
||
cd paya-university-fault-system
|
||
```
|
||
|
||
---
|
||
|
||
## ۲. ساخت برنچ شخصی
|
||
|
||
نام برنچ را اینطور بگذارید (مثال):
|
||
|
||
```bash
|
||
git checkout -b aref-tasks
|
||
```
|
||
|
||
پیشنهاد نامگذاری:
|
||
- `aref-tasks`
|
||
- `arshia-tasks`
|
||
- `reza-tasks`
|
||
|
||
یا هر نامی که مشخص کند مال شماست.
|
||
|
||
---
|
||
|
||
## ۳. کار کردن و ذخیره تغییرات
|
||
|
||
بعد از هر تغییر مهم:
|
||
|
||
```bash
|
||
git status # ببین چه فایلهایی تغییر کردهاند
|
||
git add . # همه تغییرات را اضافه کن
|
||
git commit -m "توضیح کوتاه کار انجامشده"
|
||
```
|
||
|
||
مثال پیام کامیت خوب:
|
||
- `"افزودن بخش بازیگران به user-story.md"`
|
||
- `"اصلاح توضیحات نیازمندیهای عملکردی"`
|
||
|
||
---
|
||
|
||
## ۴. ارسال برنچ به گیتهاب
|
||
|
||
```bash
|
||
git push -u origin aref-tasks
|
||
```
|
||
|
||
(فقط بار اول `-u` لازم است. دفعات بعدی فقط `git push` کافی است.)
|
||
|
||
---
|
||
|
||
## ۵. ساخت Pull Request (پیشنهاد ادغام)
|
||
|
||
1. برو به صفحه مخزن روی گیتهاب
|
||
2. روی دکمه **Compare & pull request** کلیک کن
|
||
3. عنوان و توضیح کوتاه بنویس
|
||
4. Create pull request را بزن
|
||
|
||
یکی از اعضا (ترجیحاً بازبین همان بخش) PR را بررسی و در صورت تأیید Merge میکند.
|
||
|
||
---
|
||
|
||
## ۶. رسم نمودار با Mermaid
|
||
|
||
برای رسم نمودارها (مثل Class Diagram) از ابزار [Mermaid](https://mermaid.js.org/) استفاده کنید.
|
||
نمودار بهصورت متن نوشته میشود، بنابراین تغییرات آن در Git قابل مشاهده و بازبینی است. گیتهاب این نمودارها را مستقیم در فایلهای `.md` نمایش میدهد.
|
||
|
||
مثال یک Class Diagram:
|
||
|
||
```mermaid
|
||
classDiagram
|
||
class Report {
|
||
+id: int
|
||
+status: string
|
||
+submit()
|
||
}
|
||
class Technician {
|
||
+name: string
|
||
+assign(report)
|
||
}
|
||
Technician "1" --> "*" Report : repairs
|
||
```
|
||
|
||
---
|
||
|
||
## نکات مهم
|
||
|
||
- همیشه قبل از شروع کار جدید، آخرین تغییرات `CONTRIBUTINGmain` را بگیر:
|
||
```bash
|
||
git checkout main
|
||
git pull
|
||
git checkout aref-tasks
|
||
git merge main
|
||
```
|
||
- پیام کامیت را واضح و کوتاه بنویس.
|
||
- فقط روی برنچ خودت کار کن.
|
||
- اگر گیج شدی یا ارور گرفتی، از بقیه بپرس؛ نگذار مشکل بزرگ شود.
|
||
|
||
---
|
||
|
||
## ۷. استاندارد مستندات تحلیل (`docs/analysis/`)
|
||
|
||
همه فایلهای این پوشه باید ساختار یکسان داشته باشند:
|
||
|
||
- **سربرگ:** عنوان `#`، سپس `تهیهکننده`، `بازبین` و `آخرین بهروزرسانی` (تاریخ شمسی با ارقام فارسی)، و بعد خط `---`.
|
||
- **بخشها:** بخش «مقدمه» بدون شماره؛ بخشهای اصلی با شماره (`## ۱.`)؛ آخرین بخش همیشه «نکات و پرسشهای باز» است.
|
||
- **پایان:** خط `---` و سپس `**وضعیت سند:** ...`.
|
||
- **شناسهها:** داستانها `US-NN`، نیازمندیهای کارکردی `FR-NN`، نیازمندیهای غیرکارکردی `NFR-NN`، نمودارها `AD-NN`.
|
||
- **نام بازیگران:** فقط نام فارسی؛ دانشجو، استاد، کارمند تأسیسات، تعمیرکار، مدیر، کاربر سیستم. «گزارشدهنده» یعنی دانشجو یا استاد.
|
||
- **ارجاع:** هر داستان فیلد «نیازمندیهای مرتبط» دارد و هر نمودار به داستانهای خود ارجاع میدهد.
|
||
|
||
---
|
||
|
||
اگر مرحلهای را متوجه نشدید، تو گروهمون بپرسید تا سریع حلش کنیم.
|