Why version control? ==================== A functional quality software needs a version control system, which provides several advantages. 1. Record versions so that you can rollback the software to any history version. 2. Collaboration between developers so that multiple developers can work simultaneously to enhance efficiency. 3. Keep multiple braches so that software can be developed in a separate branch and it does not affect the stable (released) version. 4. Code safety the approve-merge mechanism, etc. `git` ===== `git` is probably the most widely used version control system presently. - official website: https://git-scm.com/ - **Pro Git** (2nd Edition):https://git-scm.com/book/en/v2 CSST DAS GitLab =============== CSST DAS uses a self-managed `gitlab` instance to host data processing pipelines at https://csst-tb.bao.ac.cn/code/. The Level 1 pipeline is host in `csst-l1` group: https://csst-tb.bao.ac.cn/code/csst-l1.