## 6.7. Fetchers

BitBake also contains a set of "fetcher" modules that allow retrieval of source code from various types of sources. For example, BitBake can get source code from a disk with the metadata, from websites, from remote shell accounts or from Source Code Management (SCM) systems like `cvs/subversion/git`.

Fetchers are usually triggered by entries in `SRC_URI`. You can find information about the options and formats of entries for specific fetchers in the BitBake manual located in the `bitbake/doc/manual` directory of the Source Directory.

One useful feature for certain Source Code Manager (SCM) fetchers is the ability to "auto-update" when the upstream SCM changes version. Since this ability requires certain functionality from the SCM, not all systems support it. Currently Subversion, Bazaar and to a limited extent, Git support the ability to "auto-update". This feature works using the `SRCREV` variable. See the "Using an External SCM" section in the Yocto Project Development Manual for more information.