زبان عبارت جستجو، نحوی است که برای انجام جستجوهای مشکل در Google Issue Tracker استفاده می کنید. میتوانید از زبانی در عبارتهای جستجویی که در نوار جستجو وارد میکنید استفاده کنید. همچنین میتوانید از سازنده جستجو برای انتخاب گرافیکی معیارها استفاده کنید، که پس از بسته شدن سازنده جستجو، به زبان پرس و جو تبدیل میشود.
زبان پرس و جو به شما امکان می دهد با معیارهای زیر جستجو کنید:
- کلید واژه ها
- جفت فیلد/مقدار
جستجوهایی که انجام میدهید میتواند شامل چندین معیار باشد، از جمله ترکیبی از کلمات کلیدی و جفتهای فیلد/مقدار. نحو زبان پرس و جو به شما این امکان را می دهد تا با استفاده از عملگرهای منطقی ، پرانتز و علامت نقل قول، رابطه و ترتیبی را که در آن معیارها در نظر گرفته می شوند، مشخص کنید.
جستجوهای کلیدواژه
کلمات کلیدی رشته های متنی هستند که می توانید از آنها برای جستجو در فیلدهای خاص در شماره ها استفاده کنید. این فیلدها عبارتند از:
- عنوان
- نظرات
- نام فایل های پیوست
- فیلدهایی که شامل کاربران هستند (مثلاً Assignee یا CC )
- فیلدهایی که حاوی یک شماره شناسه داخلی هستند (به عنوان مثال، آنهایی که مؤلفه را مشخص می کنند یا لیست های داغ حاوی یک مشکل)
- فیلدهایی که شامل شماره نسخه هستند
- فیلدهای سفارشی
نمونه ای از معیارهای جستجوی کلمه کلیدی، configuration properties
رشته است. وقتی این معیار را در یک جستجو وارد میکنید، Issue Tracker به صورت سراسری مسائل را در همه مؤلفهها جستجو میکند و مواردی را که فیلدهای بالا حاوی هر دو کلمه کلیدی هستند، مطابق با مجوزهای کنترل دسترسی شما برمیگرداند. کلمات کلیدی ممکن است در فیلدهای مختلف یا همان فیلدها باشند.
Issue Tracker با کاراکتر space جداکننده معیارهای جستجو به عنوان یک عملگر ضمنی AND
برخورد می کند. می توانید از علامت نقل قول ( "
) استفاده کنید تا مشخص کنید که یک رشته چند کلمه ای به عنوان یک کلمه کلیدی در نظر گرفته شود. همه جستجوها در ردیاب مسئله به حروف بزرگ و کوچک حساس نیستند، چه از علامت نقل قول استفاده کنید یا نه.
جستجوهای جفت فیلد/مقدار
همچنین می توانید معیارهای جستجو را به عنوان یک جفت فیلد/مقدار مشخص کنید. نحو پایه [field]:[value]
است. برای فیلدهای متنی، این نحو با موضوعاتی مطابقت دارد که فیلد مشخص شده حاوی مقدار است. برای انواع دیگر فیلدها، با مسائلی مطابقت دارد که مقدار فیلد معادل است.
به عنوان مثال، جستجوی title:latency
مسائل را با کلمه latency
در قسمت عنوان مطابقت می دهد. جستجوی priority:p0
مسائلی را با اولویت p0
پیدا می کند.
توجه داشته باشید که برای فیلدهای زمان و شمارش می توانید از نمادهای رابطه ای دیگر به جز کاراکتر کولون استفاده کنید. عملگرهای رابطه ای را در زیر ببینید.
جستجوی ارزش ویژه با استفاده از هیچ و هیچ
فیلدهای اختیاری ممکن است با مقادیر ویژه any
و none
پرس و جو شوند. any
با هر مقدار غیر تهی مطابقت دارد. none
با مقادیر null مطابقت ندارد. برای فهرستی از همه برچسبهای فیلد پشتیبانی شده در زبان عبارت جستجو، به مرجع درخواست جستجو مراجعه کنید.
عملگرهای منطقی
عملگرهای منطقی به شما این امکان را می دهند که بیش از یک معیار را مشخص کنید و رابطه بین آنها را نشان دهید. همانطور که در بالا ذکر شد، کاراکترهای فاصله خارج از علامت نقل قول به عنوان عملگر ضمنی AND
عمل می کنند. Issue Tracker از عملگرهای منطقی صریح اضافی زیر پشتیبانی می کند:
اپراتور | نماد جایگزین | شرح | مثال |
---|---|---|---|
و | {فضای سفید} | در صورتی مطابقت دارد که موضوع دارای هر دو معیار باشد | star:true AND componentid:46046 |
یا | | | در صورتی مطابقت دارد که موضوع دارای یکی از معیارها باشد | type:(Bug|feature_request) |
نه | - | در صورتی مطابقت دارد که موضوع دارای معیار نباشد | -assignee:jim |
"..." | در صورتی مطابقت دارد که موضوع حاوی عبارت نقل قول شده باشد (کلمات موجود در نقل قول به ترتیب ظاهر می شوند) | comment:"We have a problem" | |
( ) | مقادیر یا معیارهای جستجو را با هم گروه بندی می کند | status:open AND (priority:(p0|p1) OR severity:(s0|s1)) |
به موارد زیر توجه کنید:
شما باید از تمام حروف بزرگ برای
AND
،OR
وNOT
استفاده کنید.عملگر
NOT
چه قبل از نام فیلد باشد چه مقدار فیلد، معنای یکسانی دارد. این بدان معنی است که-assignee:jim
وassignee:-jim
معادل هستند.برای گروه بندی واضح عبارات در عبارت جستجو از پرانتز آزادانه استفاده کنید. به طور پیشفرض، Issue Tracker
NOT
فقط با عبارتی که بلافاصله بعد از آن قرار میگیرد مرتبط میکند وOR
با دو عبارتی که آن را در براکت قرار میدهند، گروهبندی میکند. به عنوان مثال،title:(a OR b NOT c AND d)
معادلtitle:((a OR b) AND (NOT c) AND d)
است.
خط تیره ها
کاراکتر خط تیره ( -
) بر اساس زمینه در یک عبارت جستجو معانی مختلفی دارد:
Issue Tracker خط تیره قبل از یک کلمه در جستجو را به عنوان یک عملگر
NOT
در نظر می گیرد. به عنوان مثال، معیارهای جستجو-assignee:none
یاassignee:-none
همه مسائلی را که دارای یک گیرنده هستند برمیگرداند.Issue Tracker رشته های متصل شده توسط یک کاراکتر خط تیره را به عنوان محصور در علامت نقل قول می داند. برای مثال، معیارهای جستجوی
state-of-the-art
معادل"state of the art"
است.Issue Tracker با کلمات خط فاصله در یک قسمت شماره به عنوان کلمات مستقلی که با فاصله سفید از هم جدا شده اند رفتار می کند. به این معنی که اگر یک شماره در عنوان خود کلمه
state-of-the-art
داشته باشد و شما عبارت جستجویtitle:(of art state the)
یاtitle:("state of the art")
را اجرا کنید، موضوع به صورت بازگردانده می شود. بخشی از نتایج جستجو
عملگرهای رابطه ای
نحو پایه برای معیارهای جستجوی فیلد/مقدار [field]:[value]
است، که در آن کاراکتر کولون ( :
) مشخص می کند که فیلد داده شده باید برابر یا حاوی مقدار مشخص شده باشد تا بتوان یک مسئله در آن بازگردانده شود. نتایج جستجو.
فیلدهایی که حاوی مقدار زمانی ( created
، modified
، resolved
، verified
و فیلدهای سفارشی خاص) یا مقدار شمارش ( duplicatecount
، votecount
، commentcount
و cccount
) هستند از عملگرهای رابطه ای اضافی زیر پشتیبانی می کنند:
سمبل | شرح |
---|---|
< | اگر مقدار آن کمتر از/قبل از مقدار جستجوی شما باشد، با یک مشکل مطابقت دارد. |
<= | اگر مقدار آن کمتر از/قبل از یا برابر با مقدار جستجوی شما باشد، با مشکلی مطابقت دارد. |
> | اگر مقدار آن بزرگتر از/بعد از مقدار جستجوی شما باشد، با یک مشکل مطابقت دارد. |
>= | در صورتی که مقدار آن بزرگتر از/بعد یا برابر با مقدار جستجوی شما باشد، با مشکلی مطابقت دارد. |
جستجوهای زمان
زبان پرس و جوی جستجو، نحو خاصی را برای تطبیق فیلدهایی که حاوی مقدار زمانی هستند، فراهم می کند. این به Issue Tracker اجازه می دهد تا در بازه زمانی یا زمان های نسبی در صورت لزوم جستجو کند.
قالب زمان مطلق
فرمت تعیین زمان به صورت زیر است:
[yyyy]-[MM]-[dd]T[HH]:[mm]:[ss]
.
در این قالب، [yyyy]
سال 4 رقمی، [MM]
ماه 2 رقمی، [dd]
روز 2 رقمی، [HH]
ساعت 2 رقمی یک ساعت 24 ساعته است، [mm]
دقیقه است و [ss]
دومین است. همه زمان ها به UTC هستند.
هنگام جستجوی مسائل ایجاد شده در زمان معین، قبل یا بعد از آن، می توانید سطح خاصیت مورد نظر خود را ارائه دهید. برای مثال، میتوانید created:2014-06
برای یافتن مسائلی که در ژوئن 2014 در هر زمانی ایجاد شدهاند، مشخص کنید. برای جزئیات بیشتر، میتوانید created:2014-06-03T04
جستجو کنید تا مسائلی را که در 3 ژوئن 2014 در ساعت چهارم (بین 4 تا 5 صبح، UTC).
محدوده زمانی
می توانید از دو کاراکتر نقطه ( ..
) برای تعیین محدوده زمانی در معیارهای جستجوی فیلد/مقدار استفاده کنید. نحو [field]:[start time]..[end time]
. زمان شروع و پایان می تواند هر درجه ای از ویژگی که شما می خواهید داشته باشد. به عنوان مثال، verified:2013..2015
همه مسائل تایید شده در سال های 2013، 2014 یا 2015 را برمی گرداند.
قالب زمان نسبی
همچنین می توانید زمان را بر حسب روزهای قبل از امروز مشخص کنید. برای انجام این کار، از قالب [days]d
استفاده کنید، جایی که [days]
تعداد روزهای گذشته است که میخواهید در نتایج جستجو قرار دهید. برای مثال، میتوانید از modified:5d
برای پیدا کردن مسائل اصلاح شده در پنج روز گذشته استفاده کنید.
هنگام استفاده از یک قالب زمان نسبی، اپراتور باید کاراکتر کولون ( :
مانند created:5d
باشد. اگر می خواهید مسائلی را پیدا کنید که در محدوده قرار نمی گیرند، می توانید از عملگر NOT
یا -
استفاده کنید.
به عنوان مثال، -verified:10d
مسائلی را که در 10 روز گذشته تأیید نشده اند، برمی گرداند. اگر میخواهید مشکلاتی را پیدا کنید که تأیید شدهاند، اما نه در 10 روز گذشته، میتوانید از (-verified:10d) AND status:verified
استفاده کنید.
"امروز" با حساب روز جستجو می کند
می توانید از نشانه today
در جستجوهای زمانی به عنوان جایگزینی برای تاریخ فعلی استفاده کنید. از استفاده از محاسبات روز مانند today+10
و today-2
پشتیبانی می کند. توکن today
را میتوان در محدودههای زمانی مانند today-2..today+3
نیز استفاده کرد. استفاده از نشانه today
در جستجوهای ذخیره شده به استفاده مجدد از پرس و جو کمک می کند.
مثال ها:
-
created:today
-
modified<=today-10
-
nearestslo:today+10
-
resolved:2024-02-29..today+2
-
customfield1002:today..today+5
هشدار: همانطور که در قالب زمان مطلق ذکر شد، جستجوهای زمان در Issue Tracker به UTC هستند. همین امر در مورد جستجوهایی که today
استفاده می کنند نیز صدق می کند.