最近、ローカル ソース コード管理システムを「すべてのバージョンを保持する」ファイル システムまたはツールに効果的に置き換えることについての質問がありました。
回答の多くは、本質的に、ソース コード管理システムは過去のバージョンを維持するためのものではなく、個々の開発者のためのものであると述べています。これは正しいと思います。
では、質問: ソース コード管理を行う理由は何ですか? そして、それらの中で最も重要なものはどれですか?
私はソース コード管理機能にはあまり興味がありませんが、それらの機能が存在する理由には関心があります。
これは 10 のスターターですが、いくつか見逃していないかどうかを知りたいです。
- すべてのバージョン、特に出荷された製品を構成するバージョンを保持する
- チームが変更を編集および防止 (または少なくとも警告) できるようにする
- ファイルのバージョン間の違いを簡単に確認できるようにする (開発者の上位 2 つの言い訳: 「何も変更していない」と「私の変更でそれを行うべきではなかった」) をカバーします)。
- 開発者のアクシデント (意図しないコードの削除/変更) からの保護
- ハードウェアの問題 (ディスクの故障など) からの保護
- 変更されていないファイルの重複を最小限に抑えながら、複数の異なるコード ベースの開発を可能にします。
- 誰が、なぜ何かを変更したかを記録する
- メインのコード ベースを壊さずに実験的な変更を有効にする
なぜソース管理を使用するのですか?