在應用程序開發過程中,一個相當顯著的部分是開發人員管理代碼變更的方式。這些是必須包含的功能,存儲和處理工作代碼版本在不同階段穩定階段的副本,並能夠恢復代碼當存在缺陷或者產生問題的時候。更有甚者,當多個程序員工作在同一個項目時,跟蹤所有的變更是一個單向的路徑。幸運的是,開發人員不必去發明一種方法來做這些事情,有一個特別的軟件解決方案,叫做版本控制系統(Version Control Systems)
版本控制系統或者叫做修訂控制系統,實際上是一種能夠一直監視代碼文件的變更並存儲他們為了將來引用的機制(軟件)。除了這些之外,版本控制系統也保存了額外的必要數據,例如哪個開發人員做了變更,變更發生在什麼時候,實際上修訂了什麼,其他類型的歷史不僅僅是數據。而且,版本控制系統提供了比較代碼不同版本的功能,如果需要的話,可以恢復特定文件或者整個項目到以前的版本,並追查惡意的代碼最終實現無缺陷產品。