Uploads%2farticles%2f10058%2fgggg
|
2015-04-17

深圳湾夜话:如何高效管理智能硬件研发(二)轻触 Git 管理

前天,湾仔曾为大家介绍过一期关于高效管理硬件研发的小知识。对于硬件研发的整体性把握可以查阅上篇内容。今天继续高效管理智能硬件话题,主要介绍 Git 如何高效管理硬件研发。

集中式管理的 SVN 与分布式管理 Git

Git 是一款开源的分布式版本控制系统,Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。// 源自百度百科。

作为一个硬件研发、版本管理的过程,文件管理非常重要。而现国内绝大多数管理方式应该是 SVN 集中式管理,通过每天上传,每次下载副本、上传、管理员审核… 来做管理,团队所有人必须经过服务器去下载以及保存副本。但是一般情况下,一台服务器会同时跑多套文件,不管上传、下载的速度都会很慢。另外,SVN 还有一大弊端,当团队合并文件时,如果有两人上传发生冲突则需管理员协调完成后其他成员才可继续上传。

而 Git 可以将文件做分支,每个人只需下载至本地后,在自己的机器上根据不同的开发目的,创建分支,修改代码,最后与主线合并。

相较于 SVN 集中式管理,Git 能够更轻更快更加细化的管理,并且团队之间提交不容易产生矛盾冲突。同时 Git 管理可以大大降低管理员的工作量,过去每天检查处理问题的时间可以被省掉,而只需在分支的分配上处理即可(但这一点也非常考验管理者的综合能力,如何拿到一个方案后快速进行有效分支)

Git 在软件行业已经盛行多年,最著名的当属 Github,它对于整个软件生态起到了一个巨大的推进作用。对于硬件开源,Git 同样也将起到重要作用。 但由于只支持 Linux、OS 而对于 Windows 支持不够以及没有汉化版在国内硬件研发上很少使用

怎么将 Git 用到硬件研发?

对于硬件研发,一般拿到一个方案时,会分 4 个分支:Hardware(硬件)、Firmware(固件)、APP、Cloud。

在 Hardware 分支上,又可分出:SCH(硬件原理设计)、Layout(布线画线)、Outsource(Gerber、钢网、拼网提交工厂),举 Outsource 外部资源的工厂为例,当版本完成到 1.0 后,工厂只需下载版本文件确认、排期,做后上传。即使外部资源的状态也能通过 Git 掌握,而无需人工跟进采购。

Firmware 则可以分支为比较常规的算法、驱动、Profile 等。

另外,ID(工业设计)、MD(结构设计)同样也可以接入 Git 并入到主线,进行不同阶段的产品版本制作。

不管是分 4 个分支还是更多分支,最大的挑战还是考验管理者的能力,分支是一门艺术!

怎么样让我们的项目管理与 Git 去对接?

1. Git 与看板关联。一般做法,通过一个中间平台去连接 Git 与看板等管理工具,一般大家比较熟知的有 IFTTT 等。

2. Git 与工程软件关联。各个工作的工作者不再需要借助命令行或者客户端去单独操作 Git,而只需要在自己工作的工程软件上就能操作 Git,这样好处是不会遗忘 Git 的管理以及提高 Git 的效率。

3. Git 与 Outsource 关联。只需给供应商开放给他们正在使用的 ERP 等平台软件,这样这边 Git 和看板的任务在他们那边也会有下单和发货等同步跟踪(而目前绝大多数都是通过人工、QQ、表格等来操作)

虽然了解到 Git 的众多优点,但文中同时也提到,由于对于管理者要求高、全英文以及团队所有人的配合以及外部工厂系统的不支持、工人排斥等导致 Git 在中国硬件研发未能得到普及。

但希望大家能够对基础软件工具提高重视,基础软件工具对提高工作效率以及工作质量都有很大帮助!Git 这种高效的敏捷管理方法,不仅对于软件生态的强大推动作用。未来对于硬件开源,加速硬件创新,构建整个硬件生态圈都将有重要意义!

--

文章内容源自「锦泰科技」创始人「Chefbot」出品人 JimmyLiao,为便于阅读,内容经编辑整理!

深圳湾社区网站湾社区最新上线新版块「广场」,大家可以在广场里寻找资源、发布需求!

>>
Back to top btn