A codebase (sometimes spelled as two words, code base) is the complete body of source code for a given software program or application.
Source code is the version of a program that a programmer writes and saves as a file. After the code is compiled preparatory to running on a computer, the program exists as object code, which the computer understands but a human cannot without a great deal of difficulty. The source code is retained, either as a collection of files or in a source control repository, so that changes can be made as necessary throughout the software's supported life.
Codebase management really starts with the creation of the code in the first place. The quality of the programming, adherence to best practices and adequate commenting can make the codebase much easier to maintain.
Developers can save and retrieve different development versions of source code in a version control system, which also allows development teams to share control of different versions of files in the common source code repository. The system maintains a single copy of the codebase and a record of any changes. When a specific version is requested, the version control system reconstructs it from that information.
See a tutorial on essential truths about managed codebases: