— Dev, Architecture pattern, The Twelve-Factor App, English — 1 min read
A codebase refers to the main code definition that serves as shared code among
developers for ongoing feature development. Typically, a codebase is stored in a
code repository managed by a version control system like Git
, Mercurial
,
or Subversion
.
The codebase is a single repository or any set of repositories that share a root commit.
There exists a one-to-one correlation between the codebase and the app:
Per app, there exists only one codebase, but numerous deployments of the app can exist. A deployment refers to a running instance of the app, which commonly includes instances in production, staging, testing, and an additional local instance for each developer.
While the codebase remains consistent across all these environments, there might be different active versions in each environment due to ongoing feature development during the development cycle.
This Twelve-Factor App post series is a means for me to consolidate the knowledge I've gained while studying these rules. Please feel free to visit the site for more detailed explanations. That's all folks!