On this page
Definition
A repository is a directory tracked by a version control system that stores a project's files along with the full history of changes made to them.
Simple explanation
A repository is essentially a project's folder plus its memory. It contains the current files, but also every past version, who changed what, and when.
Repositories can be local (only on your machine) or remote (hosted on a service like GitHub), and typically a project keeps both in sync — you work locally and push your changes to the shared remote copy.
Why it matters
Repositories are the unit teams organise around: permissions, code review, issue tracking and deployment pipelines are usually configured per repository.
Understanding what lives in a repository — and who has access — matters for security, since leaked credentials or sensitive data committed to a public repo are a common cause of data breaches.
How it works
- 1CreateA new repository is initialised, either empty or from existing files.
- 2TrackFiles inside it are monitored for changes by the version control system.
- 3HostThe repository can be pushed to a remote service for sharing and backup.
- 4CollaborateTeam members clone, branch and contribute changes back via pull requests.
Real examples
Products named for illustration only. Inclusion is not an endorsement.
- GitHub repositoryA remote-hosted repo with issues, pull requests and CI integration.
- MonorepoA single repository containing multiple related projects or services.
- Private repositoryRestricted to specific collaborators, common for proprietary code.
- Public repositoryOpen for anyone to view, common in open-source projects.
Advantages
- Centralises a project's code and its full history in one place.
- Enables fine-grained access control over who can view or change code.
- Integrates with CI/CD, issue tracking and code review tools.
- Makes it easy to fork or clone a project to start a new one.
Limitations
- Large repositories with long histories can become slow to clone.
- Poor organisation (e.g. no clear folder structure) reduces usability regardless of tooling.
- Public repositories risk exposing secrets if credentials are committed by mistake.
- Monorepos can create tight coupling between otherwise independent projects.
Common misunderstandings
- ClaimA repository is the same as a folder.RealityA repository is a folder plus tracked version history — a plain folder has no memory of past changes.
- ClaimDeleting a repository removes all traces of its code.RealityAnyone who previously cloned it retains a full local copy of its history.
Used in these reviews
Repository appears in these Tool Money Lab reviews. Handy if you want to see the concept in a real product context.
Frequently asked questions
What is the difference between a repository and a branch?
A repository is the whole project and its history; a branch is one line of development within it.
Can a repository be private?
Yes, most hosting platforms let you restrict a repository to named collaborators.
What is 'cloning' a repository?
Downloading a full local copy of a repository, including its history, from a remote source.
What is a monorepo?
A single repository that holds multiple projects or services rather than splitting each into its own repo.
Is my repository backed up automatically?
Only if you push it to a remote host — a purely local repository has no automatic backup.
The Tool Money Lab perspective
How a team structures its repositories — one monorepo versus many small ones — is a genuine architectural decision, not a preference, with real trade-offs in build speed and coordination overhead.
We flag public repositories with hard-coded credentials as a recurring, avoidable security failure whenever we review developer tools that integrate with source control.
Conclusion
A repository holds both a project's current state and its full history, making it the organisational unit around which most developer collaboration happens.
Getting repository structure and access control right early saves considerable pain later, particularly as a codebase and its contributor list grow.