惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Simon Willison's Weblog
Simon Willison's Weblog
Vercel News
Vercel News
博客园_首页
酷 壳 – CoolShell
酷 壳 – CoolShell
M
MIT News - Artificial intelligence
The Cloudflare Blog
N
Netflix TechBlog - Medium
GbyAI
GbyAI
Help Net Security
Help Net Security
Hugging Face - Blog
Hugging Face - Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
月光博客
月光博客
阮一峰的网络日志
阮一峰的网络日志
I
Intezer
Martin Fowler
Martin Fowler
量子位
P
Palo Alto Networks Blog
Security Latest
Security Latest
Attack and Defense Labs
Attack and Defense Labs
WordPress大学
WordPress大学
H
Help Net Security
C
Check Point Blog
T
Troy Hunt's Blog
C
CERT Recently Published Vulnerability Notes
Y
Y Combinator Blog
NISL@THU
NISL@THU
L
LINUX DO - 最新话题
V
Visual Studio Blog
C
Cisco Blogs
C
CXSECURITY Database RSS Feed - CXSecurity.com
S
Securelist
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
T
The Exploit Database - CXSecurity.com
人人都是产品经理
人人都是产品经理
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Recent Announcements
Recent Announcements
Forbes - Security
Forbes - Security
IT之家
IT之家
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Application and Cybersecurity Blog
Application and Cybersecurity Blog
L
LangChain Blog
AWS News Blog
AWS News Blog
N
News and Events Feed by Topic
Stack Overflow Blog
Stack Overflow Blog
H
Hacker News: Front Page
B
Blog
W
WeLiveSecurity
罗磊的独立博客
Jina AI
Jina AI
博客园 - 【当耐特】

博客园 - 大汪的数据之路

星环大数据使用体验 vibe coding使用体验 基于SQL实现分组的文字排序聚合 数据码农马年大吉 字符串分割并展开成表格的SQL实现方法 BI报表及可视化分析类工具使用经验总结(下) BI报表及可视化分析类工具使用经验总结(上) 基于Python实现自动化微信通知和预警 Chat2DB测试体验 常用数据管理工具与平台汇总 OneID系统建设实践总结 网易有数BI使用总结 网易NDH大数据平台使用经验 程序自动化vs人工手动处理 SQL开发总结 数据平台使用经验 数据团队运维值班任务简介 Python环境安装、管理与部署 windows获取kerberos认证 SQL动态长度行列转置 ODI Scenario 场景 Oracle KEEP 分析函数
版本管理总结
大汪的数据之路 · 2025-09-04 · via 博客园 - 大汪的数据之路

作为数据从业者,在日常工作中,无论是ETL开发,还是数仓SQL开发,或者工作进展汇报,都可能会涉及到版本管理。这些场景都有什么特点?是否具有共同点呢?以下是一个简单的总结。

1、通用版本管理工具

这类工具可将各类脚本(如SQL、存储过程、python、shell等)进行版本管理。通常要有这些功能:记录修改时间、修改人、版本号,进行版本回退、合并、冲突处理。在实践中主要是这两类工具:

a、SVN

  SVN搭建方便,无费用,概念简单:Checkout → Update → Commit,GUI 客户端工具多,常见的有tortoiseSVN,使用便捷。在各种规模的团队中都有使用。

b、Git

  Git 是一个开源的版本控制系统(VCS)。概念多(工作区、暂存区、本地仓库、远程仓库),学习曲线略陡。如果不想背 Git 命令,又想完整用 Git 功能,可以使用免费的图形化客户端软件sourcetree。结合github,可以与全球开发者共同参与开发知名开源项目,并为其贡献代码。

SVN除了管理脚本外,还可以管理文档,如word、Excel等,在团队规模很小时,还可被当做网盘使用,做为团队内部的资料分享工具。如以下的案例:

 image

2、工具自带版本管理功能

除了通用工具外,数据开发中使用到一些工具软件往往会自带版本功能,比如以下两种典型案例:

a、网易大数据开发套件

  网易大数据套件基于开源hadoop生态研发出的大数据全家桶,包含离线开发等功能。其离线开发模块中可配置SQL脚本。该模块支持上线发布,历史版本查看以及回滚,这样就直接在工具中实现了版本管理功能。

image

image

image

b、Informatica ETL工具

  Informatica为商业版的ETL软件,功能强大,性能稳定,Informatica 自带 Repository(存储库)版本管理机制,所有映射(Mapping)、会话(Session)、工作流(Workflow)等对象都存储在中央存储库数据库中,支持对象的 Check-in / Check-out。可以直接在工具内查看历史版本、恢复旧版本、比较差异。

3、文档版本管理

以上两种情形主要是处理代码与流程,而在文档处理方面,在线处理工具可以方便的进行文档版本管理,既可以多人同时编辑,也可查看历史编辑记录,还可以还原到历史的某个版本。在小团队内统计工时、周报任务等场景中非常实用。

image

 4、总结

有了版本管理工具,在团队中,可以使得多个成员并行处理同一份内容;作为个人,可以基于同一份内容并行满足多个需求。提高任务处理的并行度,满足一个人同时处理多个任务,一个任务同时被多个人处理,应该就是版本管理工具的意义和价值。