你是ABAP开发者?你用abapGit吗?

看到这个问题,读者也许会想,什么是abapGit?就让我们从这个问题开始。简单地说,abapGit是一个以ABAP写成为ABAP服务的Git客户端。

有的读者可能依然感到困惑:什么是Git呢?这可能已经超出了本文的话题范围,请移步Google进行了解..

那么让我假设你在搜索之后已经返回了本文。Git是当代开发者的工具的基础部分,在我看来,在2017年的现在忽略它是不现实的。

本文链接:http://www.cnblogs.com/hhelibeb/p/7735421.html

原文标题:abapGit – so easy

回到主题,abapGit是一个开源项目,它由Lars Hvam发起,基于MIT许可证。

在本文撰写时,abapGit项目已经有30位贡献者,过去5个月中有超过500次commit,可见它是一个活跃而有生气的项目。也许看完本文后,你也会希望成为其中的一名贡献者,让项目变得更加壮大和优秀。

abapGit的设计目标之一是它应当“小型化”。这对很多人有着重要意义。其中之一即是,它会是迄今为止最易于安装的ABAP项目!没有传输,没有多个步骤,没有预安装,没有文件上传,没有补丁,不需要加载项。只要简单的将代码复制粘贴到你的ABAP开发系统系统里,然后激活它。

就像这样(视频来自youtube..):

安装完成后,你想做的第一件事大概就是连接GitHub,以保持你的abapGit代码是最新的。耶——这是个惊人的想法不是吗?我们可以在在自己喜欢的任何时间拉取abapGit项目的最近版本。Kapow! Take that CTS!(??) abapGit也有后台模式,所以你可以自动地完成更新任务。

你很可能希望为你的仓库使用Github。GitHub是当前最流行的Git托管平台,它免费,并且其中还包含某些极好的ABAP开源项目,比如abap2xlxs

abapGit需要使用TLS与GitHub连接。这意味着我们必须在ABAP系统中通过事务STRUST安装某些些根证书。abapGit安装文档可以告诉你如何获取并安装这些证书。也有一个简单的测试程序帮助你确保连接Github成功。

如果你想要将abapGit连接到其它Git服务器,它们可能也会强制你使用TLS,因此你需要安装其它根证书,具体的根证书取决于他们的CA。

所以现在已经搞定了,让我们看看我们怎样连接到GitHub上面的abapGit仓库,以保持自己安装的abapGit是最新的。有一个向导可以帮助你。

当abapGit第一次运行的时候,它会给你一个abapGit教程页。你也可以通过菜单Help->Tutorial来找到它。点击“install abapGit repo"链接来启动连接过程。会出现提示,要求你确认安装到$ABAPGIT包中。abapGit连接Git仓库(repo)和ABAP包(package)。因此我们需要将abapGit本身存储在一个本地包中——在本例里面是$ABAPGIT。还会出现提示询问你是否要覆盖刚刚创建的ZABAPGIT程序,选择“OK"。激活所有abapGit组件,就可以完成了。视频:

为完成这篇文章,让我举个能让你理解abapGit是如何改变ABAP开发者的工作的例子,带你经过一个简单的场景。我们需要以clone一个到ABAP包里作为开始。我会使用到我最近的一段有关构建Gateway Service的示例代码,代码在这里:https://github.com/grahamrobbo/teched16_example.

视频如下:

看看它有多简单,几个点击就可以从GitHub拉取所有的ABAP代码到一个我在abapGit界面中创建的包里,并且激活了所有的的东西。Kapow!

现在注意,我想我的代码需要点重构了,我决定删掉接口ZIF_GW_METHODS,因为我忘记这个东西在哪里能用到。我因此丢掉了重要的代码,程序遭到了破坏,而我无法激活任何东西。Arrrggghhhh...我想我只能登陆生产系统,复制粘贴旧版的代码,然后从头开始——假设我还能记住自己做过的修改的话。

或者——我可以只是刷新我的包为上次commit到GitHub repo的状态。并且因为我“commit early and commit often”,我并没有因此丢掉我的工作进展。视频:

Kapow!

这只是将Git引入到ABAP开发者工具中的好处之一。

Thankyou SAPlink

abapGit简介与教程的更多相关文章

  1. CUBRID学习笔记 1 简介 cubrid教程

    CUBRID 是一个全面开源,且完全免费的关系数据库管理系统.CUBRID为高效执行Web应用进行了高度优化,特别是需要处理大数据量和高并发请求的复杂商务服务.通过提供独特的最优化特性,CUBRID可 ...

  2. Java Servlet 技术简介

    Java Servlet 技术简介 Java 开发人员兼培训师 Roy Miller 将我们现有的 servlet 介绍资料修改成了这篇易于学习的实用教程.Roy 将介绍并解释 servlet 是什么 ...

  3. SQL[连载1]简介

    SQL[连载1]简介 SQL 教程 SQL 是用于访问和处理数据库的标准的计算机语言. 在本教程中,您将学到如何使用 SQL 访问和处理数据系统中的数据,这类数据库包括:MySQL.SQL Serve ...

  4. [转载]MongoDB C# 驱动教程

    本教程基于C#驱动 v1.6.x . Api 文档见此处: http://api.mongodb.org/csharp/current/. 简介 本教程介绍由10gen支持的,用于MongoDB的C# ...

  5. 【Java】Java Servlet 技术简介

    Java 开发人员兼培训师 Roy Miller 将我们现有的 servlet 介绍资料修改成了这篇易于学习的实用教程.Roy 将介绍并解释 servlet 是什么,它们是如何工作的,如何使用它们来创 ...

  6. Webpack新手入门教程(学习笔记)

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 30.0px Helvetica; color: #000000 } ...

  7. Dom 简介

    HTML DOM 简介 DOM 教程 DOM 节点 HTML DOM 定义了访问和操作 HTML 文档的标准. 您应该具备的基础知识 在您继续学习之前,您需要对以下内容拥有基本的了解: HTML CS ...

  8. 图文教程:在Mac上搭建Titanium的iOS开发环境

    http://mobile.51cto.com/web-317170_all.htm 跨平台开发工具Titanium的兴起之路:HTML 5是最大威胁 比较Titanium和PhoneGap两大iOS ...

  9. Batch入门教程丨第一章:部署与Hello World!(上)

    Batch入门教程 在本教程中,您将了解并学习与Windows Batch有关的知识和编程方法,用以解决在日常生活中所遇到的简单问题,或者利用Windows Batch建立一个最初级的编程思维方式. ...

随机推荐

  1. Redis总结(六)Redis配置文件全解

    前面已经写了一些关于redis 的介绍,redis 的基本功能和用法,基本上都说了,有问题的可以去看看 http://www.cnblogs.com/zhangweizhong/category/77 ...

  2. linux(2)文件和目录管理(新增,删除,复制,移动,文件和目录权限,文件查找)

    一.目录与路径 1.相对路径与绝对路径绝对路径:/开头, cd /usr相对路径:cd ../..2.目录操作(cd:change directory).:当前目录..:上一层目录-:上一个目录~:当 ...

  3. JavaWeb学习之JDBC API中常用的接口和类

    JDBC API中包含四个常用的接口和一个类分别是: 1.Connection接口 2.Statement接口 3.PreparedStatement接口 4.ResultSet接口 5.Driver ...

  4. c#中的格式输出

    Reference:http://blog.csdn.net/fightfaith/article/details/48137235

  5. Jacoco远程统计tomcat服务(Windows系统)的代码覆盖率

    Jacoco远程统计tomcat服务(Windows系统)的代码覆盖率 2017-09-21 目录 1 Jacoco的安装和设置  1.1 什么是Jacoco?  1.2 Jacoco安装  1.3 ...

  6. AngularJS -- 提供者(Providers)

    点击查看AngularJS系列目录 转载请注明出处:http://www.cnblogs.com/leosx/ 每个Web应用程序都是有多个对象组合.协作来完成任务的.这些对象需要被实例化,并且连接在 ...

  7. java集合系列——List集合之Vector介绍(四)

    1. Vector的简介 JDK1.7.0_79版本 Vector 类可以实现可增长的对象数组.与数组一样,它包含可以使用整数索引进行访问的组件.但是,Vector 的大小可以根据需要增大或缩小,以适 ...

  8. crontab的两大坑:百分号和环境变量

    今天想给服务器加个自动备份mysql数据库的功能(别怪我这么久才加,阿里云每天全盘备份的,不怕丢数据库),本以为只要5分钟就能搞定的,结果入了两个大坑. 我的crontab是这样写的: * * * m ...

  9. web版的tty

      1.wetty Wetty是使用Node.js和websockets开发的一个开源`Web-based SSH` 2.环境配置 2.1.配置epel源 [epel] name=epel baseu ...

  10. 五年.net程序员转型Java之路

    大学毕业后笔者进入一家外企,做企业CRM系统开发,那时候开发效率最高的高级程序语言,毫无疑问是C#.恰逢公司也在扩张,招聘了不少.net程序员,笔者作为应届生,也乐呵呵的加入到.net程序员行列中. ...