Git基础05:Git版本控制的最佳实践

简介:

本文翻译自git-tower.com

提交相关联的更新

一次提交,是有关联的更新的一个打包。比如,修复两个不同的bug,应该是两次提交。小型提交,使其他开发者更易理解那些更新。当出错时,也更容易回滚。
有了像暂存区域和暂存文件某部分的工具,git很容易的创建细粒度的提交。

经常性提交

经常提交能让你的提交更小,而且,再一次说,帮助你只提交有关联的更新。另外,它可以让你你更加频繁的跟其他人分享你的代码。那样,每个人更容易定期整合更新,避免合并冲突。相反,拥有少量的且巨大的更新,并且不经常分享,使得他人很难去解决冲突。

不要提交半成品

你只有当代码完成后才提交。这不意味着你在提交前必须完成一个完整的巨大的功能。恰恰相反:将功能的的实现分解成逻辑块,记得尽早提交和经常提交。但是,不要当离开办公室或一天结束时,把随便什么内容都提交到仓库。如果你仅仅因为你需要一个感觉的工作区(如切换分支,拉取更新等)需要临时提交,考虑使用Git的Stash功能作为替代。

在提交前测试代码

当想提交一些你“想当然的以为”已经完成的东西时,请抵制住诱惑。彻底的测试以保证它确实完成了,并且没有副作用(至少根据当前的情况判断)。当提交半成品到你本地仓库,你还能能自己原来自己;与推送/分享你代码给其他人相比,测试你自己的代码则更加重要。

编写优良的提交信息

在信息的开头,简要介绍这次更新(通常做法是至多50字),用一个空行与后续的主体分离。信息主体对于下述的问题应提供详细的回答:

  • 这次更新的动机是什么?
  • 与之前的实现有什么不同?

使用祈使句,现在时态(使用change,而不是changed或changes),与诸如git merge命令生成的提交信息一致。

版本控制不是一个备份系统

把你的文件备份到远程服务器上是一个版本控制系统非常好的附加应用。但是,你不应该像备份系统一样使用你的版本控制系统(VCS)。当进行版本控制时,你应该集中精力在语义上的提交(参考## 相关联的更新),你不应该只是填充文件。

使用分支

分支是Git最强大的功能之一,并且这并非偶然:快速易用的分支功能从一开始就是核心需求。分支是帮助我们避免混淆开发过程中不同支线的完美工具。你应在你的开发工作流程中广泛使用分支,诸如功能,修复缺陷,新想法….

统一的工作流程

Git可以让你选取诸多不同的工作流程,长期运行的分支(long-running branches),置顶分支(topic branches),合并或变基,git-flow…,你的选择取决于几个个因素:你的项目、整体的开发工作和工作流,以及(可能是最重要的因素)你和你的小伙伴的个人喜好。不管怎样,一旦你选取了一个工作流,你就要确保每个人的工作都能与此工作流程保持一致。

帮助以及文档

通过命令行获取帮助

1
$ git help <command>

在线资源

git官方网站
http://www.git-scm.com/
免费在线资源
http://www.git-tower.com/learn
http://rogerdudler.github.io/git-guide/
http://www.git-scm.org/book

目录
相关文章
|
2月前
|
开发工具 git
学习Git的最佳实践有哪些?
遵循这些最佳实践,能让你更高效地使用 Git,更好地管理项目的版本和协作。
|
2月前
|
测试技术 持续交付 开发工具
Git版本控制在团队协作中具有重要作用
Git版本控制在团队协作中具有重要作用
39 1
|
2月前
|
数据可视化 开发工具 git
如何解决 Git 版本控制系统中冲突的问题?
在Git版本控制系统中,冲突是指在合并或拉取操作时,两个或多个开发者对同一文件的同一部分进行了不同的修改,导致Git无法自动确定应该采用哪种修改。
45 1
|
2月前
|
Ubuntu 开发工具 git
Git高手必备:掌握这些版本控制最佳实践,让你的代码管理效率翻倍!
【10月更文挑战第25天】使用 Git 进行版本控制是现代软件开发的重要部分。本文详细介绍了 Git 的安装、配置、基本操作、分支管理、冲突解决及常用命令,帮助开发者提高工作效率,确保代码质量和团队协作的顺利进行。通过合理使用 Git,可以有效管理代码变更,支持多人协作,并追踪历史记录。
112 4
|
2月前
|
开发工具 C# git
C#一分钟浅谈:Git 版本控制与 GitFlow 工作流
【10月更文挑战第22天】本文介绍了 Git 和 GitFlow 的结合使用,从基础概念到具体操作,涵盖了安装配置、基本命令、GitFlow 工作流的核心分支和流程示例。同时,文章还讨论了常见的问题和易错点,如忽略文件、冲突解决、回退提交和分支命名规范,并提供了代码案例。通过学习本文,读者可以更好地理解和应用 Git 及 GitFlow,提高团队协作效率。
70 1
|
2月前
|
存储 项目管理 开发工具
掌握Git版本控制,提升团队协作效率
掌握Git版本控制,提升团队协作效率
61 0
|
2月前
|
开发工具 git
掌握Git版本控制,提升团队协作效率
掌握Git版本控制,提升团队协作效率
|
2月前
|
开发工具 git 开发者
|
3月前
|
数据可视化 项目管理 开发工具
Git 可视化的实现:提升版本控制体验的利器
Git是最流行的分布式版本控制系统,广泛用于软件开发和项目管理。但其命令行操作复杂,难以直观理解,尤其是涉及分支和合并时。为此,Git可视化工具应运而生,通过图形界面帮助开发者更清晰地理解项目历史、分支结构及变更情况。本文将探讨Git可视化的概念背景、技术方法及相关工具,包括GitKraken、Sourcetree、Gitg、Git Extensions和Tig等,帮助读者掌握其在日常工作中的应用,提升版本管理效率。此外,还将介绍如何结合可视化项目管理工具,如板栗看板,实现更高效的团队协作和任务管理。
66 0
|
3月前
|
Shell 网络安全 开发工具
使用Git进行版本控制
使用Git进行版本控制
44 0