| Code Search | |
| =========== | |
| There are a number of ways to search the Skia codebase, each with advantages and | |
| disadvantages. | |
| [cs.skia.org](http://cs.skia.org) redirects to | |
| [Chromium code search](https://code.google.com/p/chromium/codesearch) restricted | |
| to the Skia portion of the Chromium tree. You can add a query after the slash; | |
| e.g. [cs.skia.org/foo](http://cs.skia.org/foo) will search for "foo" within the | |
| Skia tree. Chromium code search provides cross-references. | |
| For Googlers, there is also the option of [the skia depot](http://cs/#skia/) in | |
| internal Code Search. In addition to the | |
| main [skia](http://cs/#skia/skia/) repo, internal Code Search indexes the | |
| [buildbot](http://cs/#skia/buildbot/), [common](http://cs/#skia/common/), | |
| and [skia_internal](https://cs/#skia/skia_internal/) repos. However, | |
| cross-references and code analysis are not available. | |
| The Github mirrors of the [skia](https://github.com/google/skia) and | |
| [skia-buildbot](https://github.com/google/skia-buildbot) repos are useful for | |
| investigating history and blame, or for exploring release branches or other | |
| branches. However, the search functionality is fairly limited, cross-references | |
| are not available, and in history the original committer's username is replaced | |
| with that person's Github username. | |
| You can also navigate through the | |
| [Skia repos on googlesource.com](https://skia.googlesource.com/). All commits | |
| appear here first. | |
| Code search option |Search |XRef |History |Repos |Branches |Freshness | |
| --------------------|-------|-----|--------|------------------------------|---------|--------------- | |
| [cs.skia.org][1] |regexp | yes |yes |skia |master |last DEPS roll | |
| [Internal][2] |regexp | no |yes |skia buildbot common internal |master |hours | |
| [Github][3] |basic | no |yes |skia buildbot |all |hour | |
| [googlesource][4] |none | no |yes |all |all |N/A | |
| [1]: http://cs.skia.org/ "Chromium code search" | |
| [2]: http://cs/#skia/ "Internal Code Search" | |
| [3]: https://github.com/google/skia "Github mirror of skia" | |
| [4]: https://skia.googlesource.com/ "Master Skia repos on googlesource.com" | |
| Client code search | |
| ------------------ | |
| There is an [internal tool for | |
| Googlers](https://goto.google.com/skia-client-search) to make it easier to | |
| search the repos of Skia clients, e.g. Chromium, Android, and Mozilla. If you | |
| use it and have suggestions, please let dogben know. |