Loading doc/source/git.rst +19 −36 Original line number Original line Diff line number Diff line Why version control? Why version control? ==================== ==================== 版本控制有两个最重要的好处,即 A functional quality software needs a version control system, which provides several advantages. 1. 版本管理 在开发中,这是刚需,必须允许并且可以很容易地对软件版本进行任意回滚, 1. Record versions 版本控制工具实现这个功能的原理简单来讲,就是你每修改一次代码,它就帮你做一次快照(snapshot)。 so that you can rollback the software to any history version. 2. Collaboration between developers 2. 写作开发 so that multiple developers can work simultaneously to enhance efficiency. 一个复杂点的软件,往往不是一个开发人员可以搞定的,为加快产品开发速度,需要有一群跟你一样的开发人员(developer)开发这个软件。 3. Keep multiple braches 拿微信来举例,现在假设 3个人一起开发微信,A开发联系人功能,B开发发文字、图片、语音通讯功能,C开发视频通话功能, so that software can be developed in a separate branch B和C的功能都是要基于通讯录的,你说简单,直接把A开发的代码copy过来,在它的基础上开发就好了,可以。 and it does not affect the stable (released) version. 但是你在他的代码基础上开发了2周后,这期 间A没闲着,对通讯录代码作了更新,此时怎么办? 4. Code safety 你和他的代码不一致了,此时我们知道,你肯定要再把A的新代码拿过来替换掉你手上的旧通讯录功能代码。 the approve-merge mechanism, etc. 现在人少,3个人之间沟通很简单,但想想,如果团队变成30个人呢? 来回这样copy代码,很快就乱了, 所以此时亟需一个工具,能确保一直存储最新的代码库,所有人的代码应该和最新的代码库保持一致。 版本控制的其他功能,例如,代码的approve-merge机制等,也在大型项目的开发中有重要意义。 `git` `git` ===== ===== `git` 是当前使用最广泛的版本控制协议,例如大家熟知的 `github.com` 就可以使用 `git`。 `git` is probably the most widely used version control system presently. - 官方网站:https://git-scm.com/ - 参考书《Pro Git (2nd Edition)》:https://git-scm.com/book/en/v2 Basic usages ============ Create a new project/repository ------------------------------- 在gitlab或者github页面中点击 `New Project` 即可在自己的账户下或者拥有权限的组织中新建代码库(repository)。 Clone remote code - official website: https://git-scm.com/ ----------------- - **Pro Git** (2nd Edition):https://git-scm.com/book/en/v2 CSST GitLab CSST DAS GitLab =========== =============== CSST 项目利用国家天文台的服务器提供了GitLab服务,网址为 https://csst-tb.bao.ac.cn/code/。 CSST DAS uses a self-managed `gitlab` instance to host data processing pipelines at https://csst-tb.bao.ac.cn/code/. 其中,一级流水线的开发均在 `csst-l1` group中进行,链接为 https://csst-tb.bao.ac.cn/code/csst-l1 。 The Level 1 pipeline is host in `csst-l1` group: https://csst-tb.bao.ac.cn/code/csst-l1. Loading
doc/source/git.rst +19 −36 Original line number Original line Diff line number Diff line Why version control? Why version control? ==================== ==================== 版本控制有两个最重要的好处,即 A functional quality software needs a version control system, which provides several advantages. 1. 版本管理 在开发中,这是刚需,必须允许并且可以很容易地对软件版本进行任意回滚, 1. Record versions 版本控制工具实现这个功能的原理简单来讲,就是你每修改一次代码,它就帮你做一次快照(snapshot)。 so that you can rollback the software to any history version. 2. Collaboration between developers 2. 写作开发 so that multiple developers can work simultaneously to enhance efficiency. 一个复杂点的软件,往往不是一个开发人员可以搞定的,为加快产品开发速度,需要有一群跟你一样的开发人员(developer)开发这个软件。 3. Keep multiple braches 拿微信来举例,现在假设 3个人一起开发微信,A开发联系人功能,B开发发文字、图片、语音通讯功能,C开发视频通话功能, so that software can be developed in a separate branch B和C的功能都是要基于通讯录的,你说简单,直接把A开发的代码copy过来,在它的基础上开发就好了,可以。 and it does not affect the stable (released) version. 但是你在他的代码基础上开发了2周后,这期 间A没闲着,对通讯录代码作了更新,此时怎么办? 4. Code safety 你和他的代码不一致了,此时我们知道,你肯定要再把A的新代码拿过来替换掉你手上的旧通讯录功能代码。 the approve-merge mechanism, etc. 现在人少,3个人之间沟通很简单,但想想,如果团队变成30个人呢? 来回这样copy代码,很快就乱了, 所以此时亟需一个工具,能确保一直存储最新的代码库,所有人的代码应该和最新的代码库保持一致。 版本控制的其他功能,例如,代码的approve-merge机制等,也在大型项目的开发中有重要意义。 `git` `git` ===== ===== `git` 是当前使用最广泛的版本控制协议,例如大家熟知的 `github.com` 就可以使用 `git`。 `git` is probably the most widely used version control system presently. - 官方网站:https://git-scm.com/ - 参考书《Pro Git (2nd Edition)》:https://git-scm.com/book/en/v2 Basic usages ============ Create a new project/repository ------------------------------- 在gitlab或者github页面中点击 `New Project` 即可在自己的账户下或者拥有权限的组织中新建代码库(repository)。 Clone remote code - official website: https://git-scm.com/ ----------------- - **Pro Git** (2nd Edition):https://git-scm.com/book/en/v2 CSST GitLab CSST DAS GitLab =========== =============== CSST 项目利用国家天文台的服务器提供了GitLab服务,网址为 https://csst-tb.bao.ac.cn/code/。 CSST DAS uses a self-managed `gitlab` instance to host data processing pipelines at https://csst-tb.bao.ac.cn/code/. 其中,一级流水线的开发均在 `csst-l1` group中进行,链接为 https://csst-tb.bao.ac.cn/code/csst-l1 。 The Level 1 pipeline is host in `csst-l1` group: https://csst-tb.bao.ac.cn/code/csst-l1.