Skip to main content

28 Maintaining Large Programs

This chapter describes Emacs features for maintaining medium- to large-size programs and packages. These features include:

  • - Unified interface to Support for Version Control Systems (VCS) that record the history of changes to source files.
  • - Commands for handling programming projects.
  • - A specialized mode for maintaining ChangeLog files that provide a chronological log of program changes.
  • - Xref, a set of commands for displaying definitions of symbols (a.k.a. “identifiers") and their references.
  • - EDE, the Emacs’s own IDE.
  • - A mode for merging changes to program sources made on separate branches of development.

If you are maintaining a large Lisp program, then in addition to the features described here, you may find the Emacs Lisp Regression Testing (ERT) library useful (see ERT in Emacs Lisp Regression Testing).

Version Control  Using version control systems.
Projects  Commands for handling source files in a project.
Change Log  Maintaining a change history for your program.
Xref  Find definitions and references of any function, method, struct, macro, … in your program.
EDE  An integrated development environment for Emacs.
Emerge  A convenient way of merging two versions of a program.