قالبها
تعریفهای قابلاستفادهٔ دوباره که هر بار مسئله، پروژه و درخواست را با همان عنوان، ویژگیها و محتوای آغازین میسازند.
نمای کلی
قالب، تعریف ذخیرهشدهٔ چیزی است که مکرر میسازید. آن را در فرم ساخت انتخاب میکنید و فیلدها از پیش پر میرسند: عنوان، ویژگیها، سند آغازین و — برای قالب پروژه — نقاط عطف و مسئلههایی که همیشه همراه آن نوع کار میآیند.
قالبها در Pulse یک زیرساخت واحد با سه نقطهٔ ورود هستند. قالب مسئله، قالب پروژه و قالب درخواست از یک صفحهٔ ویرایش، یک مدل دسترسی، یک سازوکار پیشفرض و یک رفتار مشترک در برابر ارجاعهای ازدسترفته استفاده میکنند. تفاوتشان در موجودیتی است که میسازند و ویژگیهایی که آن موجودیت دارد.
قالبهای مسئله
ویژگیها و توضیح مسئله را از پیش پر کنید، یا اول از سازنده پرسشهای ترتیبدار بپرسید.
قالبهای پروژه
پروژه را با ویژگیها، نقاط عطف و مسئلههای ساختهشده آغاز کنید.
قالبهای درخواست
ورودی کار را طوری شکل دهید که درخواستها قابل اقدام به تیم شما برسند.
هر قالب چه چیزی را تعیین میکند
هر قالب به چهار پرسش پاسخ میدهد و هرکدام تصمیم جداگانهای است که هنگام ساخت میگیرید.
| تصمیم | پرسشی که پاسخ میدهد | جایی که تعیین میشود |
|---|---|---|
| هدف | چه چیزی میسازد — مسئله، پروژه یا درخواست؟ | هنگام ساخت قالب، و بعد از آن تغییرناپذیر |
| نوع | فرم ساخت را پر میکند یا اول پرسش میپرسد؟ | صفحهٔ انتخاب نوع، و کنترل نوع هنگام ویرایش |
| دسترسی | به کدام تیمها ارائه میشود؟ | کنترل دسترسی در ویرایشگر |
| پیشفرض | آیا فرم ساخت با آن باز میشود؟ | به تفکیک تیم و هدف، در بخش «قالبهای پیشفرض» |
هدف قالب هنگام ساخت تثبیت میشود. قالب درخواست همیشه یک درخواست میسازد و هرگز مسئله نمیسازد؛ به همین دلیل ورودیای که یک تیم منتشر میکند نمیتواند بیصدا به چیز دیگری تبدیل شود.
استاندارد و فرم
قالبها دو نوع دارند.
قالب استاندارد فرم ساخت را از پیش پر میکند و همانجا متوقف میشود. سازنده یک فرم عادی مسئله، پروژه یا درخواست را با مقادیر آماده میبیند و پیش از ذخیره هر چیزی را تغییر میدهد.
برای کار تکرارشوندهٔ خود تیم مناسب است: چکلیست انتشار، گزارش حادثه، پروژهٔ راهاندازی یک مشتری.
نوع فرم برای قالب مسئله و قالب درخواست در دسترس است. قالب پروژه فقط استاندارد است، چون چیزی که آن را ارزشمند میکند — نقاط عطف و مسئلههایی که میسازد — خودش یک ساختار ثابت است، نه چیزی که از کاربر پرسیده شود.
دسترسی
هر قالب یا برای کل فضای کاری دیده میشود، یا دقیقاً برای یک تیم.
- همه اعضای فضای کاری. در فرم ساخت همهٔ تیمها ارائه میشود. برای کاری که هرجا ثبت شود یک شکل دارد.
- یک تیم. فقط در همان تیم ارائه میشود. زیرتیمها آن را به ارث نمیبرند، پس ورودی یک زیرتیم هرگز در فرم ساخت تیم والد ظاهر نمیشود.
سطح سومی وجود ندارد و زنجیرهٔ ارثبری هم وجود ندارد. آنچه یک فرم ساخت ارائه میدهد قالبهای فضای کاری بهعلاوهٔ قالبهای همان تیم است و نه چیز دیگر؛ به همین دلیل پاسخ «چرا این قالب را نمیبینم» همیشه یا تیم اشتباه است یا هدف اشتباه.
قالبهای فضای کاری را فقط مدیران فضای کاری میسازند و ویرایش میکنند. یک قالب فضای کاری آنچه را همهٔ تیمها میبینند تغییر میدهد، پس مدیران تیم فقط قالب تیمی میسازند.
قالبها کجا مدیریت میشوند
قالبها در تنظیمات، ذیل بخش همان موجودیتی که میسازند، مدیریت میشوند.
| مجموعه | مسیر در تنظیمات |
|---|---|
| قالبهای مسئلهٔ فضای کاری | Settings → Issues → Templates |
| قالبهای پروژهٔ فضای کاری | Settings → Projects → Templates |
| قالبهای درخواست فضای کاری | Settings → Features → Request templates |
| قالبهای یک تیم، هر سه هدف | Settings → Your teams → <تیم> → Templates |
هر فهرست، قالبهای ارائهشده در همان زمینه را بر اساس دسترسی گروهبندی میکند:
اول فضای کاری، بعد هر تیم. هر ردیف یک منوی … دارد: ویرایش، تکثیر، کپی پیوند
مستقیم و حذف. فقط گزینههایی را میبینید که دسترسیتان اجازه میدهد، پس کسی که
میتواند از قالب استفاده کند اما آن را نمیسازد، همچنان پیوندش را دارد.
صفحهٔ تیم هر سه هدف را در یک صفحه ادغام میکند؛ همانجایی که مدیر تیم واقعاً کار میکند. همان فهرست و همان ویرایشگر است، فیلترشده روی آن تیم.
استفاده از یک قالب
سه راه برای شروع کار از یک قالب وجود دارد و هر سه به یک فرم ساخت میرسند.
کنترل قالب در فرم ساخت. فرم ساخت مسئله، پروژه یا درخواست را باز کنید و
از کنترل قالب کنار تیم استفاده کنید. آنچه اینجا قابل استفاده است،
گروهبندیشده بر اساس دسترسی، فهرست میشود.
منوی فرمان. ⌘K (یا Ctrl+K در ویندوز و لینوکس) را بزنید و New issue from template… یا New project from template… را انتخاب کنید. فرم ساخت با
انتخابگر قالبِ بازشده باز میشود.
پیوند مستقیم. گزینهٔ کپی نشانی ساخت … از قالب روی ردیف قالب، پیوندی
میسازد که فرم ساخت را با همان قالبِ ازپیشانتخابشده باز میکند. آن را در
یک کانال یا دستورالعمل اجرایی منتشر کنید.
پیوند مستقیم یک پیشانتخاب است، نه مجوز. کسی که اجازهٔ استفاده از آن قالب را در آن تیم ندارد، فرم خالی میبیند نه قالبی که حق استفاده از آن را ندارد؛ و مرحلهٔ بازبینی در هر دو حالت نمایش داده میشود — دنبالکردن پیوند هرگز از دیدن آنچه قالب قرار است انجام دهد عبور نمیکند.
اگر پیش از اعمال قالب چیزی نوشته باشید، Pulse قبل از بازنویسی میپرسد: نوشتهٔ شما بماند و قالب فقط فیلدهای خالی را پر کند، یا مقادیر قالب جایگزین شوند.
وقتی قالب دیگر جا نمیافتد
قالبها به چیزهای واقعی ارجاع میدهند — برچسبهای یک تیم، یک پروژه، یک مسئول، یک نقطهٔ عطف — و آن چیزها حذف، تغییرنام یا جابهجا میشوند. Pulse در لحظهٔ اعمال قالب، همهٔ ارجاعها را در برابر تیم مقصد دوباره بررسی میکند و نتیجه را گزارش میدهد، بهجای اینکه بیصدا یک پیشنویس ناقص بسازد.
با مقداری که جا نمیافتد به یکی از دو شکل رفتار میشود و هر دو گزارش میشوند:
- حذفشده. ارجاع بررسی شد و رد شد. از پیشنویس کنار گذاشته میشود و فرم ساخت پیش از ساخت نامش را میبرد.
- علامتخورده. خودِ بررسی انجام نشد. مقدار نگه داشته و «تأییدنشده» علامت میخورد تا یک اختلال موقت شبیه دادهٔ ازدسترفته به نظر نرسد.
دلایلی که Pulse گزارش میکند:
| دلیل | معنایش |
|---|---|
| دیگر وجود ندارد | برچسب، فرد یا پروژهای که قالب نام برده حذف شده است |
| برای این تیم قابل مشاهده نیست | وجود دارد، اما از اینجا نمیتوانید ببینیدش |
| به اینجا تعلق ندارد | وجود دارد و قابل مشاهده است، اما مال تیم دیگری است |
| با تنظیمات این تیم پشتیبانی نمیشود | آن ویژگی برای تیم خاموش است، مثلاً تخمین |
| قالب ارجاعشده در دسترس نیست | قالبی که این قالب بر آن تکیه دارد حذف یا جابهجا شده است |
| در این حالت قابل نمایش نیست | مقداری در تبدیل بین استاندارد و فرم باقی نمانده است |
هیچکدام از اینها جلوی ساخت را نمیگیرد. تنها چیزی که میگیرد، پرسش الزامی بیپاسخ در یک فرم است.
چون ارجاعها در برابر مقصد حل میشوند، یک قالب میتواند در دو تیم پیشنویس متفاوتی بسازد. این ایراد نیست: همین چیزی است که یک قالب فضای کاری را در تیمی که برچسبهای تیم دیگر را ندارد قابل استفاده نگه میدارد.
نسخهها و انتساب
ویرایش چیزی که قالب تولید میکند — تعریف، نام، توضیح یا آیکون آن — یک نسخهٔ جدید میسازد و Pulse بهجای تفاوتها تصویر کامل تعریف را نگه میدارد. تغییر فقطِ دسترسی نسخهٔ جدید نمیسازد. وقتی کاری از روی قالب ساخته میشود، سابقه ثبت میکند از کدام قالب و کدام نسخه آمده است.
سه نتیجه دارد:
- شمارش استفادهٔ هر قالب واقعی است؛ هنگام ساخت موجودیت ثبت میشود، نه وقتی کسی انتخابگر را باز میکند.
- حذف قالب فقط ارائهٔ آن را از این پس متوقف میکند. کاری که قبلاً ساخته شده دستنخورده میماند و همچنان قالب و نسخهٔ منشأ خود را نشان میدهد.
- بازنویسی قالب، گذشته را بازنویسی نمیکند. کاری که شش هفته پیش ساخته شده هنوز به نسخهای اشاره میکند که واقعاً آن را ساخته است.
قالبهای پیشفرض
هر تیم میتواند تعیین کند فرم ساخت با کدام قالب باز شود تا حالت رایج اصلاً نیاز به انتخاب نداشته باشد. پیشفرضها به تفکیک تیم و هدف تنظیم میشوند. پیشفرض فضای کاری که تیم از آن ارث ببرد وجود ندارد: تیمی که چیزی تنظیم نکرده، فرم خالی میگیرد و هرگز پیشانتخابی که کسی تعیین نکرده است.
پیشفرض مسئله برای دو مخاطب جداگانه حل میشود: افرادی که عضو تیم مقصدند و افرادی که نیستند. قالب فرم فقط میتواند پیشفرض غیراعضا باشد، چون فرم پرسشهایش را داخل همان فرم ساختی میپرسد که یک عضو تمام روز با آن کار میکند.
درخواستها یک قدم جلوترند. تیم علاوه بر قالب پیشفرض میتواند الزام کند که هر درخواست از یک قالب شروع شود. به قالبهای درخواست مراجعه کنید.
ورودی درخواستها در Settings → Features → Request templates تنظیم میشود.
پیشفرض مسئله و پروژه در API پشتیبانی میشود اما هنوز صفحهٔ تنظیمات ندارد.
دسترسیها
| کار | چه کسی میتواند |
|---|---|
| استفاده از قالب در فرم ساخت | هرکس که بتواند آن موجودیت را بسازد |
| ساخت، ویرایش و حذف قالب تیمی | مدیران همان تیم |
| ساخت، ویرایش و حذف قالب فضای کاری | مدیران فضای کاری |
| تنظیم پیشفرض و ورودی یک تیم | مدیران همان تیم |
اعمال قالب اختیار اضافهای نمیآورد. فقط یک فرم ساخت را پر میکند و موجودیتی که تولید میشود با همان دسترسیای ساخته میشود که هر مسئله، پروژه یا درخواست دیگری نیاز دارد.
جابهجا کردن قالب بین فضای کاری و یک تیم به اختیار روی هر دو طرف نیاز دارد، تا مدیر یک تیم نتواند قالب تیم خودش را به فرم ساخت همهٔ تیمهای دیگر ارتقا دهد.
محدودیتها
| محدودیت | مقدار |
|---|---|
| نام قالب | ۱۲۰ نویسه |
| توضیح قالب | ۵۰۰ نویسه |
| پرسش در یک فرم | ۵۰ |
| گزینه در یک پرسش کشویی یا چندگزینهای | ۱۰۰ |
| موردی که یک قالب میسازد | ۲۰۰ |
| عمق تودرتویی مسئلههای ساختهشده | ۲ سطح — یک مسئله و زیرمسئلههایش |
قدم بعدی
آخرین بهروزرسانی