【.com快译】毫无疑问,Git在各种软件开发中发挥了重要作用,因为它允许开发人员同时在同一个代码库上工作.但是,我们也发现一些开发者没有遵循Git的相关最佳实践(参见--https://acompiler.com/git-best-practices/),导致各种程序跑起来,以及代码中的棘手问题调用过程中暴露的问题。下面,我将与大家一起探讨GIT中影响代码质量的七种良好实践,希望对大家日常的开发项目有所帮助。1、原子提交(AtomicCommit)众所周知:向Git提交内容意味着你已经确认了代码的变化,并希望将它们作为一个新的可信版本保存在Git仓库中。但是,版本控制系统通常不会限制您提交代码的方式。也就是说,您可以做以下三件事中的任何一件:一次提交数千个更改。提交所有dll和其他依赖项。将有问题的代码检查到存储库中。可见这并不能保证更新后代码的一致性,有时甚至会降低代码的整体质量。所以我们需要一些时间来审查代码(请参阅--https://dzone.com/articles/what-is-code-review-and-why-do-you-need-it)。在这里,为了保证团队的整体生产力水平,我们可以使用原子提交(参见--https://acompiler.com/git-commands/),例如:在执行原子提交时,你的一个更改Commits可能涉及多个文件,所以我们应该确保这是一个全局写入以避免任何不一致。就像我们之前熟悉的数据库原子性一样,我们显然需要将其实现到对Git的操作中。2、明确提交的内容很多开发者只是盲目的执行更改、提交、推送的操作过程,而没有考虑提交文件的类型和必要性。这会导致不需要的文件类型,例如:dll和pdf被提交到存储库。因此,在将代码签入存储库之前,您可以考虑两个问题:您真的需要签入所有文件吗?它们是您源代码的必要部分吗?您可以简单地使用.gitignore文件(参见--https://acompiler.com/git-commands/),以避免存储库中出现不需要的文件。.gitignore文件不仅可以为我们提高存储库的清晰度,还可以帮助我们保持代码的整洁。据此,你可以自由提交各种代码文件,那些自动生成的.dll、.class等不需要的文件会被自动忽略。如果您同时处理多个存储库,则可以使用全局.gitignore文件,而不是一遍又一遍地添加或推送。3、掌握各种Git命令毫无疑问,Git是一个强大且超级实用的工具。如果你能像使用Linux/Unix操作系统一样掌握各种基本的git命令(参见--https://acompiler.com/git-commands/),那么你可以更有效地使用该工具,并获得两倍的结果在操作Git的过程中事半功倍。在使用Git的时候,你可能会遇到语法规则等一些困难,Git提供了非常友好的在线帮助。您可以使用“githelp+commandname”从Git的bash中了解有关Git命令的更多信息。这种快速查找您可能使用的几乎所有git命令的方法。4.简化工作流程如果你的团队正在共同处理一个Git管理的项目,那么整个开发团队必须确保并使用相同的工作流程。统一的流程无疑会给你带来以下三个好处:使整个开发流程更有条理。良好的Git工作流程始终保持分支清洁。让团队的沟通更顺畅,提高输出代码的整体质量。5.先测试后推送我们需要在提交代码或将代码推送到生产环境之前对每一个变更进行全面测试。过去,我们试图阻止项目成员将有缺陷的代码直接提交到他们的本地存储库。今天,我们也需要遵循敏捷开发的思想,避免那些有问题的源代码给在线协作团队带来麻烦。在实践中,我们需要做到以下几点:鼓励整个团队在提交之前对自己的代码变更部分进行相关的单元测试,从根源上避免代码缺陷外流。如果在构建过程中发现任何代码错误,应立即终止构建。可以通过“咨询”及时修复这个错误,避免此类错误流入Git,甚至被其他代码段调用。6、保护主(master)分支由于Git中默认的分支是master,所以我们需要保证master分支上的代码能够在生产环境中稳定运行。您可以通过多种方式保护master分支,例如:pre和posthook,以及公司相关的策略。此外,您可以在master分支上启用以下保护措施:确保master分支没有被意外或故意删除。master分支上的各种提交历史不应被覆盖。在master中,代码不应未经审查直接签入。7.分支管理Git提供了强大的分支模型。您应该将手头的代码保存在与主分支完全隔离的不同分支中。无论您是要添加新功能、修复错误还是需要重构,都可以从创建新分支开始。完成必要的更改后,检查代码,提出拉取请求,将其合并到主分支,并保持同步。总结以上是我们在使用Git时需要遵循的七个良好实践。当然,为了进一步提高代码质量和整体生产力,还可以借鉴AFTER技术。详情请参考--https://acompiler.com/after-technique/。【原标题】GIT中提高代码质量的7个最佳实践,作者:RajeevBera
