Reference and command governors are add-on control schemes which enforce state and control constraints on pre-stabilized systems by modifying, whenever necessary, the reference. This paper surveys the extensive literature concerning the development of such schemes for linear and nonlinear systems. The treatment of unmeasured disturbances and parametric uncertainties is also detailed. Generalizations, including extended command governors, feedforward reference governors, reduced order reference governors, parameter governors, networked reference governors, and decentralized/distributed reference governors, are discussed. Practical applications of these techniques are presented and surveyed as well. A comprehensive list of references is included. Connections with related approaches, including model predictive control and input shaping, are discussed. Opportunities and directions for future research are highlighted.