1.什么是EGit?
GIT是一种流行的版本控制系统,广泛用于软件开发部门。 尽管是流行的版本控制系统,但要使用命令行界面进行版本控制并不是一件容易的事。 为了解决此难题,开发人员想出了基于创意GUI的工具,称为GIT客户端。 GIT客户端提供了图形界面来执行命令,而无需实际键入命令。 除此之外,它们还提供界面以可视化文件,项目以及进行比较的分支。
但是,即使是GIT客户端也存在问题。 大多数开发人员更喜欢使用Eclipse,Netbeans或IntelliJ等IDE进行编码。 由于GIT客户端除了是IDE之外还作为单独的工具运行,因此很难管理工作区之内和之外的文件。 人们将不断需要在IDE和GIT客户端之间切换以管理版本控制。 EGit是此问题的答案。
EGit是Eclipse IDE的插件。 EGit是一个GIT版本管理插件,可在Eclipse插件存储库中免费获得。 EGit提供了一个完全集成的解决方案,用于在项目中启用GIT版本控制。 它集成到Eclipse中,并支持从Git存储库克隆到Git拉取,推入,合并,重新设置,提交和重置等一系列功能。 它还提供了一种简单的分支管理解决方案,可以在本地以及在远程存储库上管理分支。
2.安装EGit
先决条件
EGit可以像其他任何插件一样轻松安装。 有关安装EGit的详细信息将进一步讨论。
以下是使用此处提供的更新URL安装GIT的详细步骤:
- 从提供的链接复制更新站点URL,并导航到“帮助”->“在Eclipse中安装软件”
- 如下图所示粘贴URL,然后按Enter键
- 选择所有组件以获取EGit提供的完整功能,如上图所示。
- 通过按下一步并接受许可协议来继续
安装完成后,Eclipse将需要重新启动以完全加载功能。 因此,重新启动Eclipse并通过导航到Eclipse / Help- > About Eclipse并单击Installation Details按钮来检查安装状态。 打开的窗口应显示当前已安装到Eclipse的工具列表。 在列表中检查“ Eclipse的GIT集成”,以确定EGit已成功安装。
3.使用EGit
为了开始使用EGit,需要完成一些配置,这些配置将使使用文件和GIT存储库变得容易。 在开始使用演示存储库之前,让我们完成配置。
3.1将GIT工具栏添加到当前透视图
GIT工具栏包含用于最基本操作的按钮,如“拉”,“推”,“提交”,“重置”等。 工具栏将使管理文件变得更容易,而不是每次都在弹出菜单中导航。 为了启用GIT工具栏,请导航至窗口->透视图->自定义透视图。
在“动作集映射”部分中选择GIT工具,以显示所有可用的GIT工具栏选项。
选择后,GIT工具栏应该在Eclipse的主窗口中可见。 现在,我们可以继续克隆GIT存储库。 为了克隆GIT存储库,我们需要打开GIT存储库视图。 使用窗口->显示视图->其他打开GIT存储库视图。 搜索GIT存储库,然后单击“确定”。 将会显示一个类似于下面的窗口。
3.2克隆GIT存储库
为了克隆GIT存储库,请在上面显示的窗口中单击“ 克隆GIT存储库”链接。 复制远程存储库的URL并将其粘贴到打开的窗口中,如下所示。 EGit支持所有流行的通信协议,即https,http,ftp,git,ssh,sftp和文件。 输入远程存储库用户名和密码,然后单击下一步。
下一个窗口将列出可用于相应存储库的分支。 到目前为止,只有主分支推送到存储库。 选择您需要克隆到本地工作区中的分支,然后单击下一步。 选择要存储项目的目录,然后单击“完成”。 克隆存储库并将文件下载到本地系统可能会花费一些时间。 克隆存储库后,它将显示在Git Repositories窗口中。
3.3导入项目
如果上面克隆的存储库包含与Eclipse兼容的项目,则可以通过右键单击并从弹出菜单中选择Import Projects轻松导入项目 ,如下图所示。
如果打开了相应的窗口,则该项目将出现在Package Explorer / Project Explorer中。 现在,该项目已连接到远程存储库,并且可以使用Eclipse IDE直接完成所有可以使用GIT命令行工具完成的操作。
3.4创建一个新分支
导入项目后,开发人员通常会通过创建单独的分支来开始执行任务。 右键单击项目并导航到Team-> Switch To-> New Branch,可以轻松创建一个新分支。 这将打开一个新窗口,询问分支名称。 输入分支名称,然后按完成以切换到该新分支。
此新分支保存在本地,并且在将其推送到资源库之前将无法在远程资源库上使用。 开发人员可以自由地在当前分支上开始工作,并在需要时提交更改。
3.5将分支推送到远程存储库
可以按照下图所示的导航将分支立即推送到远程存储库。
推送后,分支将可在远程存储库上供其他克隆。 每当推送新存储库时,都会打开“推送结果”窗口,指示已在远程存储库上创建了新分支,如下图所示。
开发人员现在可以开始更改文件。 每当文件被更改时,EGit都会像GIT工具一样不断跟踪更改。
3.6跟踪文件更改并提交文件
可以在GIT暂存窗口中轻松查看已更改代码的文件。 要打开“ Git暂存”窗口,请按照与打开GIT存储库视图类似的步骤进行操作。 导航到窗口->显示视图->其他-> Git登台
GIT暂存将包含包含更改的文件列表。 GIT暂存窗口中有3个主要部分。
- 非暂存更改:已更改但尚未添加到索引中以提交文件的文件
- 分阶段的更改:已更改并准备提交的文件
- 提交消息:在提交过程中添加的消息,以通知团队并跟踪正在提交的更改。
与远程存储库中的现有文件相比,经常需要查看对文件所做的更改。 在这里可以查看文件中的更改。 为了将文件与最后提交的文件进行比较,只需在此窗口中双击文件即可。 它将打开Eclipse比较工具,以显示到目前为止与先前提交的版本相比所做的更改。
也可以通过在包/项目浏览器中右键单击“ 比较与-> Head Revision” ,将文件与HEAD版本进行比较 。 一旦代码更改达到逻辑结束,开发人员便可以通过将文件添加到索引并单击上面显示的GIT暂存窗口中的“ 提交”按钮来本地提交更改。
为了将文件添加到索引,有两种可能的方法:
- 右键单击该项目,然后导航到Team-> Commit :此方法会将所有包含更改的不可忽略文件添加到索引以进行提交。 对于特定文件或软件包,也可以遵循相同的过程。 最终将打开GIT暂存窗口。
- 按照上述说明打开Git Staging窗口。 在“未分段的更改”部分中,右键单击需要添加到索引或提交的文件,然后选择“ 添加到索引” 。 这会将文件从非暂存更改移动到暂存更改区域。
准备好提交文件后,添加提交说明,然后单击“提交”按钮。 这会将更改提交到本地存储库。
3.7将更改推送到远程存储库
为了使更改在远程存储库中可用,有两种方法:
- 从GIT暂存窗口中选择“ 提交并按下”按钮,而不是“ 提交”按钮。 这将推动更改并提交更改。
- 在“程序包/项目资源管理器”中右键单击该项目。 导航至团队->推送至上游。 这会将提交的更改推送到远程存储库。
推送后,可以在远程存储库中查看更改,如下图所示。
3.8获取最新更改
在两种情况下,可能需要从远程存储库中提取更改。
- 在某些情况下,某些更改可能直接从存储库或由其他开发人员提交给分支。 在这种情况下,与分支机构合作的开发人员无法将文件推送到开发人员撤消最新更改之前。
- 开发人员可能希望从主分支或父分支中获取最新更改,以增强相应功能或在当前分支中使用新开发的功能
在第一种情况下,开发人员可以单击GIT工具栏中的拉动符号,如下图所示。
在第二种情况下,需要将更改从其他分支引入。 要从另一个分支提取更改,需要单击带有?的Pull图标。 符号。 它打开一个窗口,询问需要从中引入更改的分支名称。输入分支的名称,然后单击“完成”。 根据从选择框中选择的选项,将对最新更改进行合并/重新设置。
通常,该工具可以轻松地将更改合并到文件中。 但是,如果发生任何冲突,EGit将显示拉动的冲突状态,并且项目标签上会出现一个小红点,表示存在冲突的文件。
在这种情况下,有两种方法可以解决冲突:
- 手动编辑文件并提交相应的更改
- 通过右键单击文件并导航到Team-> Merge Tool,使用Merge工具
将更改推送到存储库后,冲突符号将自动消失。
3.9查看文件历史记录并比较更改
涉及版本控制时,通常将文件与其他分支或先前版本或HEAD版本进行比较。 使用EGit,只需在相应文件上单击鼠标右键后浏览菜单即可。 下图显示了相同的解释。
与HEAD修订版比较:将当前文件状态与远程存储库上的可用版本进行比较
与索引比较:将当前文件状态与已索引文件的文件状态进行比较。 这对于检查增量更改很有用
与上一修订版比较:比较文件和上一修订版推送到存储库
与分支/标签/参考进行比较:允许您选择特定的分支,标签或参考标头,以将当前文件状态与
与提交进行比较:将当前文件状态与文件的最后提交版本进行比较
4。结论
本文介绍了在Eclipse中使用EGit插件所需的所有基本操作。 该插件是避免为GIT版本控制和项目开发管理多个工具的最简单方法。 借助EGit,完整的工作流程被集成到单个IDE中,这无疑使查看更改和可视化跟踪变得更加容易。 最重要的是,EGit是GNU Public授权下的免费工具,因此使用它不会花费您很多钱。
翻译自: https://www.javacodegeeks.com/2018/03/git-version-control-with-eclipse-egit-tutorial.html