掌握Git的7个技巧

每个嵌入式软件开发人员以及希望每个通用软件开发人员的共同点是,他们使用版本控制系统来管理其软件。那里有不同的版本控制系统,但是今天最流行的系统是Git。如果您从未使用过版本控制系统或刚开始使用Git,那么这里有一些掌握Git的技巧和窍门,可帮助您快速入门。

 

技巧1 –从命令行开始使用Git

刚开始使用Git时,我首先使用了图形用户界面(GUI),该界面完全抽象了Git的细节以及幕后发生的一切。这当然很方便,但是问题是我不知道幕后发生了什么。对这些细节的不了解造成了我的知识空白,这使得管理存储库更加困难。

入门时,最好的做法是使用命令行来使用Git,尽管起初会比较慢。这迫使开发人员充分了解Git,其工作原理,命令是什么,并获得有关幕后知识。只有到那时,开发人员才抽象那些细节并转移到GUI才真正有意义。

 

提示#2 –练习测试项目

开发人员可以在项目上即时学习Git,但是最好的学习方法是花一些时间并创建一个测试项目。一个测试项目为开发团队提供了许多优势,例如:

  • 尝试分支
  • 合并分支机构的经验
  • 与多个开发人员一起在存储库中工作
  • 集成持续集成和测试
  • 弄清楚工作流程以及如何解决不可避免的问题

测试项目不必太复杂。开发人员可以将几个文本文件粘贴到随机文本中。开发人员可以与他们的项目组织一起玩,如何忽略特定的文件类型(例如目标文件),甚至创建子模块。

 

提示#3 –使用子模块

Git子模块基本上是另一个Git存储库,它是另一个存储库的一部分。例如,我最近正在从事一个项目,该项目将Microchip Harmony库用于所有低层驱动程序和一些中间件支持。我没有创建一个项目存储库,而是创建了一个存储库来存储Microchip Harmony库,然后再存储一个用于我的应用程序代码的存储库。 Microchip Harmony库作为子模块包含在应用程序存储库中。

在这种情况下,子模块还具有其他一些优点。首先,我可以在多个存储库中使用子模块。如果我正在处理多个使用Microchip Harmony的项目,则不必保留单独的库副本。我只有Microchip Harmony存储库,它作为子模块添加到应用程序存储库中。其次,当我签出应用程序并进行更改时,默认情况下,如果没有其他命令或命令选项,将不会包含子模块。这很有用,因为如果我将所有内容都检查到一个存储库中,由于Microchip Harmony库中包含的文件数量众多,则需要花费git几分钟才能在我的项目中搜索更改。

 

提示4 –利用Git GUI简化软件管理

我总是发现从终端进行工作很繁琐。终端确实提供了许多开发人员可能想要使用的额外控制级别,但是一旦您了解了Git在幕后所做的事情及其功能,通常就可以更快,更抽象地提取这些细节并使用GUI工具与之交互。存储库。开发人员可以使用许多GUI工具。我最常使用的两个是SourceTree和TortoiseGit。 SourceTree是Atlassian免费提供的工具,可在Mac和Windows计算机上使用。 TortoiseGit用于Windows,并将目录集成到Windows资源管理器中,这可能非常方便。

 

提示5 –开发和/或采用标准Git流程

开始使用Git的好处是,已经有很多工作流已经被开发人员使用多年了。入门时,您可以尝试通过反复尝试找出最适合自己的方法,也可以使用标准的Git流程。有几种非常流行的工作流程,例如:

  • Gitflow工作流程
  • 分叉工作流程
  • 功能分支工作流程

我个人通常使用功能分支工作流程。在这种情况下,开发人员会从主线创建一个分支,用于开发特定的应用程序功能,例如ADC驱动程序,按钮反跳功能等。其他从事该项目的开发人员还为自己创建了分支,以便他们在开发自己的产品时就可以使用。特征。功能完成后,它将合并到主线中。这具有几个重要的优点,例如:

  • 主线绝不包含实验性代码或无效代码
  • 持续集成服务器可以使用该主线
  • 每个开发人员都在自己的分支机构工作,以最大程度地减少其他开发人员正在执行的工作的影响

您可以从以下官方Atlassian教程中了解有关不同GitFlows的更多信息: //www.atlassian.com/git/tutorials/comparing-workflows .

 

提示6 –提交带有有用注释的代码

将代码提交到存储库时,开发人员应包括有用的注释,以使他们可以轻松地遍历存储库并了解该代码版本中的内容。创建分支时,我会为分支命名一些有用的东西,例如FEATURE_ADC。当我提交该代码或将结果与主线合并时,我确保在注释日志中包含以下几条信息:

  • 软件和/或功能的版本号
  • 进行了哪些更改
  • 该版本的任何已知问题
  • 普通的留言

我通常会在每个评论中都包含一个部分,并填写每个部分。例如,在更改部分,我将经常对我添加,删除和更新的内容进行评论。在“问题”部分中,我可能会包含一些说明,即我需要添加错误处理或仅覆盖50%的测试,或者包含任何使我知道需要做的其他工作的说明。我还可能包括发现的所有新错误,但这些错误我并未在该提交中修复。最后,我可能会留下一些有关代码的一般性评论,例如需要更新文档,有改进的想法等。

注释对于确定该版本中的内容非常有用,但是在午餐后进行回顾以记住您从哪里退出以及下一步需要解决的内容也非常有用。

 

提示7 –确定好的参考手册

今天的最后一个提示是,每个开发人员都需要一个良好的Git参考。在大多数情况下,仅需在您最喜欢的搜索引擎中执行搜索以找出初始化子模块或存储您的当前更改或恢复当前主线的命令是容易的。无论出于什么原因,我有时仍然喜欢以书本形式保留物理参考。我发现,虽然我可以很快地在互联网上找到一些东西,但是一本好书也可以,并且使我的视线从盯着屏幕上稍作休息。对于Git,我发现Jon Loeliger和Matthew McCullough的“带有Git的版本控制”是不错的参考书,也是一本好书,对于初学者来说,他们可以深入了解如何设置和使用其Git存储库。我怀疑大多数开发人员只是根据需要搜索网络,但是由于Git对开发人员执行了如此重要的任务,因此我们真的应该更加深入。

 

结论

如今,每个开发人员都应使用版本控制系统。 Git是最受欢迎的,而且入门当然并不难。对于新手来说,某些细微差别肯定会具有挑战性。在今天的帖子中,我们探索了一些简单的入门提示,可以帮助读者快速入门。

2 thoughts 上 “掌握Git的7个技巧”

  1. 嗨贝宁戈,
    作为一个嵌入式开发人员,我如何在项目中包含GIT。
    目前的做法是
    1.)创建项目发行版本的副本
    2.)用下一个版本重命名
    3.)修改源代码并重建。

    1. 即使您只是一名开发人员,使用修订控制(Git)仍然很重要。启动编码项目时,应将代码检入到存储库中。有很多免费的工具,例如gitlab,bitbucket等。
      1)确定要实施的新功能
      2)创建一个分支以开发功能
      3)实施和测试
      4)在开发过程中根据需要提交
      5)将功能齐全的功能合并到主线
      6)重复

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

该网站使用Akismet减少垃圾邮件。 了解如何处理您的评论数据.