A repository, often called a repo, is a place that stores software code. A code repository helps developers organize their software and maintain software version control. Repositories are typically language and file-type agnostic, meaning they can be used to store any type of programming project. Repositories are also essential in collaborative development. For example, Github hosts code repos that enable multiple developers to collaborate on the same development project. Often, developers pull code from a central repository, work locally within a code editor, and push their changes to the main branch. Repositories may be private or public, depending on the business scenario.