# Source Control Management (SCM) Source Control Management (SCM) is a synonym for [[Version Control]]: the practice of tracking changes to source code and other files over time. The term emphasizes management of source code specifically, though the underlying concepts apply to any versioned content. SCM is sometimes used to refer to the broader tooling ecosystem including [[Git]], repository hosting ([[GitHub]], [[GitLab]]), and workflows like [[Pull Requests (PRs)|Pull Requests]]. ## SCM vs Related Terms | Term | Emphasis | | | ------------------------------------------------- | -------------------------------------- | --- | | **SCM** | Source code management (industry term) | | | **[[Version Control]]** | General concept of tracking changes | | | **[[Version Control System (VCS)]]** | Software implementing version control | | | **[[Distributed Version Control System (DVCS)]]** | Distributed VCS like Git | | | **Revision Control** | Older term, same concept | | ## Modern SCM Tools - **[[Git]]**: Dominant DVCS created by [[Linus Torvalds]] - **[[GitHub]]**: Git hosting with collaboration features - **[[GitLab]]**: Git hosting with integrated [[DevOps]] - **Bitbucket**: Atlassian's Git hosting - **Azure DevOps**: Microsoft's SCM and DevOps platform ## References - https://en.wikipedia.org/wiki/Version_control ## Related - [[Version Control]] - [[Version Control System (VCS)]] - [[Distributed Version Control System (DVCS)]] - [[Git]] - [[GitHub]] - [[GitLab]]