【SAP】NW AS ABAP Developer Editionで開発環境を作る(5)abapGitをインストール
はじめに
この記事では、NW AS ABAP Developer EditionにabapGitをインストールして使ってみます。
社内環境だとこういったものを自由に試せない場合もあると思いますが、こういうときこそ個人の環境の使いどころですね。
<関連記事>
【SAP】NW AS ABAP Developer Editionで開発環境を作る(1)
abapGitとは
abapGitとは、ABAPで書かれたABAPのためのGitクライアントです(abapGit – so easyより)。abapGitはオープンソースのプロジェクトで、有志によってメンテナンスされています。すでに6年も続いているそうです(Devtoberfest Finalist Judging Webinarより)。
abapGitを使うと何ができるのか
①ソースコードの管理
Gitによるソースコードの管理ができます。1つのパッケージがabaiGitの1つのリポジトリになるので、業務領域ごとに1つの大きいパッケージを作るような運用は向きません。もっと細かい単位でパッケージを作成する必要があります。
②オープンソースのABAPコードを自分の環境にコピー
ABAP Open Source ProjectsというサイトにオープンソースのABAPプロジェクトが集まっています。「こんなツールあったらいいのに」という要望を、すでにかなえているプロジェクトがあるかもしれません。従来のコピー&ペーストだと、複数の開発オブジェクトを使用したツールを移植するのはなかなか大変ですが、abapGitを使えば一括でできます。
③オープンソースのプロジェクトに貢献する
abapGitをはじめとするオープンソースのプロジェクトに改善点を見つけたら、プルリクエストを送ってマージしてもらうことができます。ちょっとハードルが高いですが。。。
手順はこちらに書かれています。
以下ではabapGitが使えるように設定をしたのち、実際にabapGitを使用してみます。
設定編
まずはabapGitが使えるように設定を行います。
<ステップ>
1. abapGit用のレポートプログラムを作成
2. SSLの設定
1. abapGit用のレポートプログラムを作成
1.1. ソースコードを以下のサイトからダウンロードし、.abap
の拡張子で保存
1.2. レポートプログラムを作成
- プログラム名:
ZABAPGIT_STANDALONE
- Utilities>More Utilities>Upload/Download>Upload...をクリック
- ダウンロードしておいたabapファイルを選択
- ソースが取り込まれたことを確認し、保存、有効化
- プログラムを実行すると以下の画面が表示される
2. SSLの設定
インターネット上にあるGitリポジトリとやりとりするためにSSLの設定が必要になります。
2.1. 証明書をダウンロード
以下はChromeの場合の手順です。それ以外のブラウザの場合はこちらを参照してください。
- ブラウザで
https://github.com/
を開く - アドレスバーの鍵マークをクリックし、"Certificate"をクリック
- 証明書の詳細タブを開き、「ファイルにコピー」
- ウィザードに従って証明書をダウンロード
- 証明書の種類は手順に特に指定されていなかったのでデフォルトのものを選択
- ダウンロード先のフォルダとファイル名を指定(ファイルの拡張子は
.cer
とする) - 証明書のポップアップに戻り、「証明のパス」タブを開く
- github.comの1階層上の証明書を選択し、「証明書の表示」をクリック
- 上記と同様の手順で、ルート階層までの証明書をダウンロードする。結果、3つの証明書がダウンロードされる
2.2. 証明書をABAPシステムにインポート
- トランザクション:
STRUST
を実行 - 変更モードに切り替え(①)
- "SSL client SSL Client (Anonymous)フォルダをクリック(②)
- 証明書をインポート(③)
- "Add to Certificate List"をクリック(④)
- すべての証明書をインポートした結果は以下のようになる
2.3. 接続のテスト
以下は任意のステップですが、GitHubへのSSL接続がうまくいっているかどうかテストすることができます。
-
接続確認用のソースをコピーし、レポートプログラム
ZABAPGIT_TEST_SSL
を作成 - プログラムを実行
- 接続がうまくいくと以下の画面が表示される
使用編
abapGitを使用して以下のことをしてみます。
- リモートリポジトリからソースをコピー
- 自分のABAPソースをGitで管理する
1. リモートリポジトリからソースをコピー
ここではabapOpenChecksというリポジトリをコピーします。abapOpenChecksはABAP Test Cockpit (ATC)で使用できるチェックのコレクションです。使用方法については別の記事で書きたいと思います。
1.1. プログラムZABAPGIT_STANDALONE
を実行
1.2. リモートリポジトリからソースをコピー
- GitリポジトリのURLとパッケージ名を入力し、Create packageをクリック(移送対象としないので、$はじまりのパッケージ名にしている)
- Short Descriptionを入力し、続行
- Clone online repoをクリック
- リポジトリがからソースなどがダウンロードされる。Pullをクリックして取り込む
- 数分待つと有効化のダイアログが出てくるので全て有効化する
- 以上で取り込みが完了。取り込んだクラスなどが使用できるようになる
2. 自分のABAPソースをGitで管理する
<流れ>
2.1. Gitリポジトリを登録
2.2. パッケージを登録
2.3. Gitリポジトリとパッケージをひもづける
2.4. パッケージにオブジェクトを追加する
2.5. 変更をGitリポジトリに送る
2.1. Gitリポジトリを登録
2.2. パッケージを登録
なぜかADTで登録できなかったので、トランザクション:SE21
で登録(ステップ2.3.で登録してもよい)
2.3. Gitリポジトリとパッケージをひもづける
2.4. パッケージにオブジェクトを追加する
CLASS zcl_abap_git_001 DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
INTERFACES if_oo_adt_classrun .
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
CLASS zcl_abap_git_001 IMPLEMENTATION.
METHOD if_oo_adt_classrun~main.
out->write( |Hello abapGit!| ).
ENDMETHOD.
ENDCLASS.
2.5. 変更をGitリポジトリに送る
- abapGitに戻ってRefreshボタンを押すと、追加したクラスが表示される
- Stageをクリック
- Add All and Commitをクリック
- Committerの名前、メールアドレス、コメントを入力してCommitをクリック (この後GitHubのログイン情報を求められる)
- Commitが成功したメッセージが表示される
- Gitリポジトリを見るとsrcフォルダなどが追加されている
通常Gitを使った流れはAdd -> Commit -> リモートリポジトリにPushとなりますが、abapGitではCommitした時点でPushもされました。つまり、ローカルでのコミットという概念はないのだと思われます。
ここまででできたこと
- abapGitを使ったソースコード管理ができるようになりました。
- オープンソースのABAPプログラムをabapGitからダウンロードできるようになりました。
参考
- ドキュメント
- abapGit – so easy
- CTS is beautiful(abapGitはCTSの代わりではない、移送はCTSでやりましょうという話)
Author And Source
この問題について(【SAP】NW AS ABAP Developer Editionで開発環境を作る(5)abapGitをインストール), 我々は、より多くの情報をここで見つけました https://qiita.com/tami/items/11da1cca1bc61a0c54de著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .