Put Everything Under Version Control

本文详细介绍了如何将项目所有资产置于版本控制系统下,包括源代码、文档、工具、构建脚本等,通过使用Git、Subversion、Mercurial和CVS等免费工具,确保项目的完整性与安全性。通过合理利用版本控制系统的特性,如分支、标签和合并操作,开发者可以轻松跟踪项目历史,避免重复工作,并维护项目的一致性和稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Put Everything Under Version Control

Diomidis Spinellis

PUT EVERYTHiNG iN ALL YOUR PROjECTS UNDER VERSiON CONTROL.
The resources you need are there: free tools like Subversion, Git, Mercurial, and CVS; plentiful disk space; cheap and powerful servers; ubiquitous net- working; and even project-hosting services. After you’ve installed the version control software, all you need in order to put your work in its repository is to issue the appropriate command in a clean directory containing your code. And there are just two new basic operations to learn: you commit your code changes to the repository and you update your working version of the project with the repository’s version.
Once your project is under version control, you can obviously track its his- tory, see who wrote what code, and refer to a file or project version through a unique identifier. More importantly, you can make bold code changes without fear—no more commented-out code just in case you need it in the future, because the old version lives safely in the repository. You can (and should) tag a software release with a symbolic name so that you can easily revisit in the future the exact version of the software your customer runs. You can create branches of parallel development: most projects have an active development branch and one or more maintenance branches for released versions that are actively supported.
A version control system minimizes friction among developers. When pro- grammers work on independent software parts, these get integrated almost by magic. When they step on one another’s toes, the system notices and allows them to sort out the conflicts. With some additional setup, the system can notify all developers for each committed change, establishing a common understanding of the project’s progress.
136 97 Things Every Programmer Should Know

When you set up your project, don’t be stingy: place all the project’s assets under version control. In addition to the source code, include the documenta- tion, tools, build scripts, test cases, artwork, and even libraries. With the com- plete project safely tucked into the (regularly backed up) repository, the potential damage of losing your disk or data is minimized. Setting up for development on a new machine involves simply checking out the project from the reposi- tory. This simplifies distributing, building, and testing the code on different platforms: on each machine, a single update command will ensure that the software is the current version.
Once you’ve seen the beauty of working with a version control system, follow- ing a couple of rules will make you and your team even more effective:
• Commit each logical change in a separate operation. Lumping many changes together in a single commit will make it difficult to disentangle them in the feature. This is especially important when you make project-wide refactor- ings or style changes, which can easily obscure other modifications.
• Accompany each commit with an explanatory message. At a minimum, describe succinctly what you’ve changed, but if you also want to record the change’s rationale, this is the best place to store it.
• Finally, avoid committing code that will break a project’s build, otherwise you’ll become unpopular with the project’s other developers.
Life under a version control system is too good to ruin it with easily avoidable missteps.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值