From 1ed6c1e533f1e4da8e5ed2e57ef83836b2ceaf42 Mon Sep 17 00:00:00 2001 From: "ithink.chan" Date: Tue, 20 Aug 2019 15:38:39 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=200.3=20=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E4=B8=8E=E5=8D=8F=E4=BD=9C=E5=BC=80=E5=8F=91?= =?UTF-8?q?=20=E7=9A=84=E9=83=A8=E5=88=86=E5=86=85=E5=AE=B9.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: ithink.chan --- Chapter0_序言/0.3_项目管理与协作开发.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Chapter0_序言/0.3_项目管理与协作开发.md b/Chapter0_序言/0.3_项目管理与协作开发.md index e69de29..ad2c996 100644 --- a/Chapter0_序言/0.3_项目管理与协作开发.md +++ b/Chapter0_序言/0.3_项目管理与协作开发.md @@ -0,0 +1,13 @@ +# 0.3 项目管理与协作开发 + +当项目很小的时候一个人就可以完成全部开发工作,甚至不需要太多测试工作。 + +当项目变大之后,在有限的时间内,一个人不太可能完成全部的开发任务,需要进行多人写作开发。怎么协作呢?考虑当前有一份 Base 代码,甲在其上进行开发形成 BaseA0,乙在其上进行开发形成 BaseB0,丙在其上进行开发形成 BaseC0。如何才能将这三分代码组合形成最终的代码呢?将三分代码交给丁进行统一合并是一种解决办法,这种办法也很糟糕,修改的内容过多的话合并工作就会变得繁重并且容易出错。 + +为了修复 Bug 或者增加功能,软件版本不断演进,当 BaseA0 变成 BaseA1,BaseB0 变成 BaseB3,BaseC0 变成 BaseC5 之后,丁的合并工作将变得不堪重负。经常性的,丁还需要知道哪个版本具有什么功能,此时丁要对多个版本进行管理,将代码打包并且附上一份与之对应的说明文档。一旦版本过多,管理就会变得复杂。 + +开发一个新功能之后,很可能会发现一些新 Bug,这个 Bug 是否只在新版本中出现了?此时我们要回溯版本,如果从多个打包文件中解压源码,将使工作目录下有多个源码工程,工作目录将变得脏乱不堪。 + +所有代码都保存在丁的电脑中也不安全,一旦丁的电脑损坏,所有人都无法继续工作,甚至有可能造成代码的永久丢失。 + +有没有办法可以一次性解决上面所有问题?答案就是版本管理工具。