Copybara | 854996b | 2021-09-07 19:36:02 +0000 | [diff] [blame^] | 1 | [define category_css]css/ph_detail.css[end] |
| 2 | [include "../framework/header.ezt" "hidetabs"] |
| 3 | |
| 4 | [# Note: No UI element permission checking needed on this page. ] |
| 5 | |
| 6 | <div id="searchtips"> |
| 7 | |
| 8 | <h3>Basic issue search</h3> |
| 9 | |
| 10 | <p>In most cases you can find the issues that you want to work with |
| 11 | very easily by using the issue list headers or by entering a few |
| 12 | simple keywords into the main search field.</p> |
| 13 | |
| 14 | <p>Whenever you visit the "<a href="list">issue list</a>" in your |
| 15 | project, you are presented with a table of all open issues, or the default |
| 16 | query set up by the project owners. If you |
| 17 | see too many results, you can quickly filter your results by clicking |
| 18 | on the table headers and choosing a specific value from the "Show |
| 19 | only:" submenu.</p> |
| 20 | |
| 21 | [# TODO screenshot ] |
| 22 | |
| 23 | <p>The main search field consists of two parts:</p> |
| 24 | |
| 25 | <ul> |
| 26 | <li>A drop-down selection of search scopes, e.g, "All issues" or just "Open issues".</li> |
| 27 | <li>A search text field where you can enter search terms.</li> |
| 28 | </ul> |
| 29 | |
| 30 | [# TODO screenshot ] |
| 31 | |
| 32 | <p>In the text field, you may enter simple search terms, or add any of |
| 33 | the search operators described below.</p> |
| 34 | |
| 35 | <p>You can also use the search text field to jump directly to any |
| 36 | issue by entering its issue number. If you wish to search for issues |
| 37 | that contain a number, rather than jumping to that issue, enclose the |
| 38 | number in quotation marks.</p> |
| 39 | |
| 40 | <p>Behind the scenes, the search scope is simply an additional set of |
| 41 | search terms that is automatically combined with the user's search |
| 42 | terms to make a complete query. To see what search terms will be |
| 43 | used for each scope, hover your mouse over the scope item.</p> |
| 44 | |
| 45 | |
| 46 | <h3>Advanced issue search</h3> |
| 47 | |
| 48 | <p>The <a href="advsearch">Advanced Search</a> page helps you |
| 49 | compose a complex query. The advanced search form breaks the search |
| 50 | down into several popular criteria and allows you to specify each one |
| 51 | easily. The search criteria boil down to the same thing as the search |
| 52 | operators described below, but you don't need to remember the operator |
| 53 | names.</p> |
| 54 | |
| 55 | |
| 56 | |
| 57 | <h3>Full-text search</h3> |
| 58 | |
| 59 | <p>As with Google web search, you can search for issues by simply |
| 60 | entering a few words. However, you may get a few more results than |
| 61 | you expected. When you need to search more precisely, you can use |
| 62 | search operators for more power.</p> |
| 63 | |
| 64 | <form action="list" method="GET"> |
| 65 | <p><input type="text" size="45" name="q" value=""out of memory""> |
| 66 | <input type="submit" name="btn" value="Search"></p> |
| 67 | </form> |
| 68 | |
| 69 | <p>Full-text search terms can include quoted phrases, and words or |
| 70 | phrases can be negated by using a leading minus sign. Please note |
| 71 | that negated full-text terms are likely to give large result sets, |
| 72 | so it is best to use structured search operators when possible.</p> |
| 73 | |
| 74 | |
| 75 | <h3>Search operators</h3> |
| 76 | |
| 77 | <p>Normal search terms will match words found in any field of an |
| 78 | issue. You can narrow the search to a specific field by using the |
| 79 | name of the field. The built-in field operators are <tt>summary</tt>, |
| 80 | <tt>description</tt>, <tt>comment</tt>, <tt>status</tt>, <tt>reporter</tt>, |
| 81 | <tt>owner</tt>, <tt>cc</tt>, <tt>component</tt>, <tt>commentby</tt>, |
| 82 | <tt>hotlist</tt>, <tt>ID</tt>, <tt>project</tt>, |
| 83 | and <tt>label</tt>.</p> |
| 84 | |
| 85 | <p>Field names can be compared to a list of values using:</p> |
| 86 | <ul> |
| 87 | <li>a colon (:) for word matching,</li> |
| 88 | <li>an equals sign (=) for full string matching,</li> |
| 89 | <li>a not equals sign (!=) or leading minus sign to negate, or</li> |
| 90 | <li>inequality operators (<, >, <=, >=) for numeric comparison.</li> |
| 91 | </ul> |
| 92 | |
| 93 | <p>You can limit your search to just open issues by using |
| 94 | is:open, or to just closed issues by using a minus sign to negate it: |
| 95 | <tt>-is:open</tt>.</p> |
| 96 | [# TODO(jrobbins): dateopened:] |
| 97 | |
| 98 | <p>For example, here's how to search for issues with the word |
| 99 | "calculation" in the summary field.</p> |
| 100 | |
| 101 | <form action="list" method="GET"> |
| 102 | <p><input type="text" size="45" name="q" value="summary:calculation"> |
| 103 | <input type="submit" name="btn" value="Search"></p> |
| 104 | </form> |
| 105 | |
| 106 | <p>When searching for issues owned by a specific user, you can use their |
| 107 | email address, or part of it. When referring to yourself, you can also |
| 108 | use the special term <tt>me</tt>. For example, this restricts the search to |
| 109 | issues that are owned by you.</p> |
| 110 | |
| 111 | <form action="list" method="GET"> |
| 112 | <p><input type="text" size="45" name="q" value="owner:user@chromium.org"> |
| 113 | <input type="submit" name="btn" value="Search"> |
| 114 | </form> |
| 115 | |
| 116 | <form action="list" method="GET"> |
| 117 | <p><input type="text" size="45" name="q" value="owner:me"> |
| 118 | <input type="submit" name="btn" [if-any logged_in_user][else]disabled=disabled[end] value="Search"> |
| 119 | [if-any logged_in_user][else] |
| 120 | <span style="white-space:nowrap"><a href="[login_url]" |
| 121 | >Sign in</a> to try this example</span> |
| 122 | [end]</p> |
| 123 | </form> |
| 124 | |
| 125 | <p>Rather than have a large number of predefined fields, our issue |
| 126 | tracker stores many issue details as labels.</p> |
| 127 | |
| 128 | <p>For example, if you labeled security-related issues with the label |
| 129 | <tt>Security</tt>, here's how to search for them.</p> |
| 130 | |
| 131 | <form action="list" method="GET"> |
| 132 | <p><input type="text" size="45" name="q" value="label:security"> |
| 133 | <input type="submit" name="btn" value="Search"></p> |
| 134 | </form> |
| 135 | |
| 136 | |
| 137 | <p>In addition to simple one-word labels, you can use two part labels |
| 138 | that specify an attribute and a value, like <tt>Priority-High</tt>, |
| 139 | <tt>Priority-Medium</tt>, and <tt>Priority-Low</tt>. You can search for |
| 140 | these with the <tt>label</tt> operator, or you can use the first part of the |
| 141 | label name like an operator.</p> |
| 142 | |
| 143 | <p>For example, if you labeled high priority issues with |
| 144 | <tt>Priority-High</tt>, here's one way to search for them.</p> |
| 145 | |
| 146 | <form action="list" method="GET"> |
| 147 | <p><input type="text" size="45" name="q" value="label:Priority-High"> |
| 148 | <input type="submit" name="btn" value="Search"></p> |
| 149 | </form> |
| 150 | |
| 151 | <p>And, here is a more compact way to do the same search.</p> |
| 152 | |
| 153 | <form action="list" method="GET"> |
| 154 | <p><input type="text" size="45" name="q" value="Priority:High"> |
| 155 | <input type="submit" name="btn" value="Search"></p> |
| 156 | </form> |
| 157 | |
| 158 | <p>For the <tt>components</tt> operator, the default search will find |
| 159 | issues in that component and all of its subcomponents.</p> |
| 160 | |
| 161 | <form action="list" method="GET"> |
| 162 | <p><input type="text" size="45" name="q" value="component:UI"> |
| 163 | <input type="submit" name="btn" value="Search"></p> |
| 164 | </form> |
| 165 | |
| 166 | <p>And of course, you can combine any of these field operators.</p> |
| 167 | |
| 168 | <form action="list" method="GET"> |
| 169 | <p><input type="text" size="45" name="q" |
| 170 | value="status!=New owner:me component:UI"> |
| 171 | <input type="submit" name="btn" value="Search"></p> |
| 172 | </form> |
| 173 | |
| 174 | <p>You can search for issues in the current project that are also on a user's |
| 175 | hotlist.</p> |
| 176 | |
| 177 | <form action="list" method="GET"> |
| 178 | <p><input type="text" size="45" name="q" |
| 179 | value="hostlist=username@domain:hotlistname"> |
| 180 | <input type="submit" name="btn" value="Search"></p> |
| 181 | </form> |
| 182 | |
| 183 | |
| 184 | <h3>Empty (or non-empty) field search</h3> |
| 185 | |
| 186 | <p>For each built-in field operator, you can use the <tt>has</tt> |
| 187 | operator to search for issues with empty or non-empty fields. The |
| 188 | <tt>has</tt> operator can be used with status, owner, cc, component, |
| 189 | attachments, blocking, blockedon, mergedinto, any key-value label prefix, or |
| 190 | any custom field name.</p> |
| 191 | |
| 192 | <p>For example, here's how to search for issues that have one or more |
| 193 | components.</p> |
| 194 | |
| 195 | <form action="list" method="GET"> |
| 196 | <p><input type="text" size="45" name="q" value="has:component"> |
| 197 | <input type="submit" name="btn" value="Search"> |
| 198 | </form> |
| 199 | |
| 200 | <p>Or, you can use the <tt>-has</tt> operator for negation, to search for |
| 201 | issues with empty fields.</p> |
| 202 | |
| 203 | <p>For example, here's how to search for issues that are not associated with |
| 204 | any component.</p> |
| 205 | |
| 206 | <form action="list" method="GET"> |
| 207 | <p><input type="text" size="45" name="q" value="-has:component"> |
| 208 | <input type="submit" name="btn" value="Search"> |
| 209 | </form> |
| 210 | |
| 211 | |
| 212 | <h3>Multiple values in search terms</h3> |
| 213 | |
| 214 | <p>You can search for two values for one field, or two labels |
| 215 | with the same prefix by using.</p> |
| 216 | |
| 217 | <form action="list" method="GET"> |
| 218 | <p><input type="text" size="45" name="q" value="Priority:High,Medium"> |
| 219 | <input type="submit" name="btn" value="Search"></p> |
| 220 | </form> |
| 221 | |
| 222 | |
| 223 | <p>You can combine two separate queries into one using the <tt>OR</tt> operator.</p> |
| 224 | |
| 225 | <form action="list" method="GET"> |
| 226 | <p><input type="text" size="45" name="q" value="Priority:High OR -has:owner"> |
| 227 | <input type="submit" name="btn" value="Search"></p> |
| 228 | </form> |
| 229 | |
| 230 | |
| 231 | <p>You can create more complex <tt>OR</tt> queries using parentheses nesting to |
| 232 | distribute search terms across <tt>OR</tt> clauses. A search query may contain as |
| 233 | many sets of parentheses and levels of parentheses nesting as needed.</p> |
| 234 | |
| 235 | <form action="list" method="GET"> |
| 236 | <p><input type="text" size="45" name="q" value="Pri:0,1 (status:Untriaged OR -has:owner)"> |
| 237 | <input type="submit" name="btn" value="Search"></p> |
| 238 | </form> |
| 239 | |
| 240 | |
| 241 | <h3>Exact value search</h3> |
| 242 | |
| 243 | <p>You can search for issues that exactly match the given term by using |
| 244 | the search operator <tt>=</tt>.</p> |
| 245 | |
| 246 | <p>For example, searching for <tt>Milestone=2009</tt> only matches issues with the |
| 247 | label <tt>Milestone-2009</tt>, while searching for <tt>Milestone:2009</tt> matches |
| 248 | issues with the labels <tt>Milestone-2009</tt>, <tt>Milestone-2009-Q1</tt>, <tt>Milestone-2009-Q3</tt>, |
| 249 | etc.</p> |
| 250 | |
| 251 | <form action="list" method="GET"> |
| 252 | <p><input type="text" size="45" name="q" value="Milestone=2009"> |
| 253 | <input type="submit" name="btn" value="Search"></p> |
| 254 | </form> |
| 255 | |
| 256 | <p>Similarly, using exact matching on components will get you only those issues |
| 257 | that are in that component, not including any of its descendants.</p> |
| 258 | |
| 259 | <form action="list" method="GET"> |
| 260 | <p><input type="text" size="45" name="q" value="component=UI"> |
| 261 | <input type="submit" name="btn" value="Search"></p> |
| 262 | </form> |
| 263 | |
| 264 | <h3>Star search</h3> |
| 265 | |
| 266 | <p>Any logged in user can mark any issue with a star. The star |
| 267 | indicates interest in the issue.</p> |
| 268 | |
| 269 | <p>For example, to quickly see all the issues in this project that you |
| 270 | have starred, you could use the following:</p> |
| 271 | |
| 272 | <form action="list" method="GET"> |
| 273 | <p><input type="text" size="45" name="q" value="is:starred"> |
| 274 | <input type="submit" name="btn" [if-any logged_in_user][else]disabled="disabled"[end] value="Search"> |
| 275 | [if-any logged_in_user][else] |
| 276 | <span style="white-space:nowrap"><a href="[login_url]" |
| 277 | >Sign in</a> to try this example</span> |
| 278 | [end]</p> |
| 279 | </form> |
| 280 | |
| 281 | <p>And, to see the issues that more than ten users have starred, use the following:</p> |
| 282 | |
| 283 | <form action="list" method="GET"> |
| 284 | <p><input type="text" size="45" name="q" value="stars>10"> |
| 285 | <input type="submit" name="btn" value="Search"></p> |
| 286 | </form> |
| 287 | |
| 288 | |
| 289 | <h3>Jump to issue and numeric search</h3> |
| 290 | |
| 291 | <p>You can jump directly to a specific issue by entering its ID in the |
| 292 | search field.</p> |
| 293 | |
| 294 | <p>For example, to jump to issue 1, just search for 1. If there is no |
| 295 | existing issue with that ID, the system will search for issues that |
| 296 | contain that number anywhere in the issue.</p> |
| 297 | |
| 298 | <form action="list" method="GET"> |
| 299 | <p><input type="text" size="45" name="q" value="1"> |
| 300 | <input type="submit" name="btn" value="Search"></p> |
| 301 | </form> |
| 302 | |
| 303 | <p>If you just want to search for issues that contain the number 1, without |
| 304 | jumping to issue 1, enclose the number in quotation marks.</p> |
| 305 | |
| 306 | <form action="list" method="GET"> |
| 307 | <p><input type="text" size="45" name="q" value=""1""> |
| 308 | <input type="submit" name="btn" value="Search"></p> |
| 309 | </form> |
| 310 | |
| 311 | <p>Searching for a list of specific issue IDs is one way to |
| 312 | communicate a set of issues to someone that you are working with. Be |
| 313 | sure to set the search scope to "All issues" if the issues might be |
| 314 | closed.</p> |
| 315 | |
| 316 | <form action="list" method="GET"> |
| 317 | <p><input type="text" size="45" name="q" value="ID=1,2,3,4"> |
| 318 | <input type="hidden" name="can" value="1"> |
| 319 | <input type="submit" name="btn" value="Search"></p> |
| 320 | </form> |
| 321 | |
| 322 | |
| 323 | <h3>Attachment search</h3> |
| 324 | |
| 325 | <p>Users can attach files to any issues, either when issues are created or as |
| 326 | part of issue comments.</p> |
| 327 | |
| 328 | <p>To quickly see all the issues that have attachments, use the following:</p> |
| 329 | |
| 330 | <form action="list" method="GET"> |
| 331 | <p><input type="text" size="45" name="q" value="has:attachments"> |
| 332 | <input type="submit" name="btn" value="Search"></p> |
| 333 | </form> |
| 334 | |
| 335 | <p>Or, you can search for a specific filename of the attachment.</p> |
| 336 | |
| 337 | <form action="list" method="GET"> |
| 338 | <p><input type="text" size="45" name="q" value="attachment:screenshot"> |
| 339 | <input type="submit" name="btn" value="Search"></p> |
| 340 | </form> |
| 341 | |
| 342 | <p>You can also search for the file extension of the attachment.</p> |
| 343 | |
| 344 | <form action="list" method="GET"> |
| 345 | <p><input type="text" size="45" name="q" value="attachment:png"> |
| 346 | <input type="submit" name="btn" value="Search"></p> |
| 347 | </form> |
| 348 | |
| 349 | |
| 350 | <p>You can also search for issues with a certain number of attachments.</p> |
| 351 | |
| 352 | <form action="list" method="GET"> |
| 353 | <p><input type="text" size="45" name="q" value="attachments>10"> |
| 354 | <input type="submit" name="btn" value="Search"></p> |
| 355 | </form> |
| 356 | |
| 357 | |
| 358 | <h3>Date range search</h3> |
| 359 | |
| 360 | <p>You can perform searches based on date ranges.</p> |
| 361 | |
| 362 | <p>This search syntax is divided into two parts, the action and the date, |
| 363 | [[]action]:[[]date]</p> |
| 364 | |
| 365 | <p>Built-in date operators include <tt>opened</tt>, |
| 366 | <tt>modified</tt>, and <tt>closed</tt>. Each can be paired with an |
| 367 | inequality operator <tt><</tt> or <tt>></tt>. The date must to be |
| 368 | specified as YYYY-MM-DD, YYYY/MM/DD or today-N.</p> |
| 369 | |
| 370 | <p>For example, if you want to search for issues opened after 2009/4/1, you |
| 371 | could do the following:</p> |
| 372 | |
| 373 | <form action="list" method="GET"> |
| 374 | <p><input type="text" size="45" name="q" value="opened>2009/4/1"> |
| 375 | <input type="submit" name="btn" value="Search"></p> |
| 376 | </form> |
| 377 | |
| 378 | <p>Or, if you want to search for issues modified 20 days before today's date, |
| 379 | you could do the following:</p> |
| 380 | |
| 381 | <form action="list" method="GET"> |
| 382 | <p><input type="text" size="45" name="q" value="modified<today-20"> |
| 383 | <input type="submit" name="btn" value="Search"></p> |
| 384 | </form> |
| 385 | |
| 386 | <p>You can search for issues that had specific fields modified |
| 387 | recently by using ownermodified:, statusmodified:, componentmodified:. |
| 388 | For example:</p> |
| 389 | |
| 390 | <form action="list" method="GET"> |
| 391 | <p><input type="text" size="45" name="q" value="ownermodified>today-20"> |
| 392 | <input type="submit" name="btn" value="Search"></p> |
| 393 | </form> |
| 394 | |
| 395 | |
| 396 | </div> |
| 397 | |
| 398 | [include "../framework/footer.ezt"] |