协作开发与版本控制:Git or SVN

2023-09-24 18 0

一曰:工欲善其事,必先利其器;

二曰:当今不在是孤胆英雄混迹江湖的时代,团队合作才是王道。一场胜利的战役,必然是多人协作的结果。

Git也有本地化方案,只是以前没搞清楚,sorry -2020年4月7日更新

 

之前,团队中总是用U盘和QQ当代码传输介质。人少的时候(1-3),还感觉不到什么,甚至要比SVN等代码管理工具来的利索。版本管理全靠手动整理,几年下来,差不多有了10多G的代码备份,每天都在担心自己的硬盘会不会爆炸(所以造成了我隔三差五移动硬盘备份代码的好习惯)。随着项目的规模越来越大,团队成员也越来越多,终有一天,发现原来粗犷的代码管理模式变得有点幼稚,也发现怪不得好多招聘需求都要求“熟悉SVN,Git等代码管理工具”。

 

其实SVN在我们的开发团队一直就有,但总是用不起来,一直就是当作一个代码备份工具在用,日常总是沉默在公司一个不可见的角落。然后,就慢慢淡出了人们的视线,慢慢的假装遗忘。

 

在目前团队建设中,代码协作和管理是很重要的一环。所以协作开发与代码管理工具又一次被提了出来。这次一定要强力推动这个点。(一个点一个点的推进,相信总有完善的一天!这篇文章其实并不是技术分享,烂大街的内容,但也是属于我的一个脚印,记录在这里。之后,我会慢慢分享不成熟的团队建设内容。)

 

1、Git局域网解决方案:

需要安装的内容(实际上,有前三个就够了):

Git-2.10.2-64-bit.exe

TortoiseGit-2.6.0.0-64bit.msi

TortoiseGit-LanguagePack-2.6.0.0-64bit-zh_CN.msi

GitExtensions-2.51.01-SetupComplete.msi (扩展插件?)

Git Source Control Provider(VS2010 插件)

在上面的软件都安装完成后,设置主计算机A:

1. 设置计算机A的工作环境:家庭网络,然后建立家庭组,开启防火墙,

2. 新建文件夹,并设置为共享文件夹,添加家庭组权限,完全控制

3. 将改文件夹映射网络驱动器

4. 点右键,Git在这里创建版本库,制作纯版本库

设置好主计算机A后,在别的计算机B中设置:

1. 加入该家庭组后,重启计算机

2. 安装上面的软件

3. 点右键,Git在这里创建版本库,(不勾制作纯版本库)

4. 点右键,设置Git远端,添加URL路径(共享文件夹路径)

5. 点右键,拉取

 

2、Git本地服务器解决方案:

Gitblit 

Git-2.10.2-64-bit.exe 

TortoiseGit-2.6.0.0-64bit.msi 

TortoiseGit-LanguagePack-2.6.0.0-64bit-zh_CN.msi

服务器配置教程网络中有,这里不展开。

 

3、Git网络服务器解决方案:

Git-2.10.2-64-bit.exe 

TortoiseGit-2.6.0.0-64bit.msi 

TortoiseGit-LanguagePack-2.6.0.0-64bit-zh_CN.msi

服务器配置教程网络中有,这里不展开。

 

4、SVN解决方案:

TortoiseSVN-1.8.8.25755-x64-svn-1.8.10

LanguagePack_1.8.8.25755-x64-zh_CN

VisualSVN-Server-3.0.1-x64

按照以上顺序安装即可,最后要设置SVN服务器。

 

简单的对比测评:在局域网小团队(<8)之间的协作开发,除了QQ传来传去外,GIT和SVN都可选,但SVN在环境配置方面更胜一筹,GIT需要研发团队有独立的家庭组,否则代码有泄露风险,换用本地服务器方案,会和SVN类似,但Git的分布式结构可能抗风险能力更好一些。而SVN则采用了用户名登陆机制,管理员负责权限配置~那为啥现在流行Git,单纯因为新吗?不懂。SVN简单用用好了。

 

 

(这是朋友圈里抄来的,头狼真的不容易!)
请尊重你的领路人……头狼挖出了一条走出去的路,可能不一定是最顺直的!但会让团队走的轻松、走的顺畅,却不会告诉大家开垦这条路的过程有多累,多辛苦。看到这幅图时突然被感动了,当你自认为辛苦、艰难甚至委屈时,请看看前面开路的那位,当头狼在冒险、开拓、进取的时刻,请跟随者把所有的怨言、负面扼杀在思想的摇篮里,因为头狼的阻力远比追随者大N倍,献给所有的领头人!!

 

 

 

 

代码编程
赞赏

相关文章

SEO外链方法之论坛外链心得
seo论坛外链怎么带链接(做论坛外链怎么带链接才不会被删帖)
多仓库手机端erp进销存pc/h5开源版开发
java基于springboot的进销存管理信息系统
毕业设计之基于PHP+uniapp的进销存系统
【原创】基于SSM的超市进销存管理系统(超市管理系统毕业设计)