C++ Builder CEでユーティリティを開発

Remote Repository Listの開発

前記事までで、目の前のマシン(複数可)のストレージで開発済みないし開発中のプロジェクトを再帰的にスキャンする、

そのマシン毎の結果をとりまとめてExcelのファイルを作る

という二つのユーティリティーを紹介しましたが、今回は逆にremote repositoryをおいてあるサーバーのリストからローカルではなく、remote repositoryのリストを作るプログラムです。外観は、

こんな感じです。GetSingleでリモートレポジトリサーバー単一のレポジトリリストを得ます。リモートレポジトリサーバリストは、何度も紹介しているRRM(remote repository manager)で使うリスト(urls-pats.txtないしnoenc-urls-pats.ext)と同じです。一部をマスクして掲載しましょう。単純な構成です、

1
gitea 147
http://192.168.0.147:3000/api/v1
nao
95401d51230662220xxxyyye9eb49c035524010772cac0fc6d
4
gitlab.com

https://gitlab.com/api/v4
Doctornao glpat-11VezV56kDV-zF2xJhEKmu5 5 github.com
https://api.github.com
Prof-Doc-nao ghp_9RMobIPNmUDxgfrgNfCPDeeMpA56p1w1hG53i5Pev 6 bitbucket
https://api.bitbucket.org/2.0/repositories
DoctorNao VPXfNrtKBG6rxarskUnHTtPL 7 gitea.com
https://gitea.com/api/v1
docnao b18220a030ax2c1arerx78612489b146cdee95abfcb573 10 github.com
https://api.github.com
alt-doc-nao ghp_02as1fxrrgaD6DOxypOxbLQEDTLDnRwZwS34nNKz

連番になっていないのは、諸般の事情でサーバーが死んだか、休止中とかのためです。

具体的なソースコードを示すこともできますが、ご希望があればアップします。Gitea,Gitlab,Github,bitbucketそれぞれのAPIの練習みたいなものですね。特長はemptyなrepositoryを検出することでしょうかね?

ここでもレポジトリリストはTListViewに表示されますが、簡易dbとしてexcel出力できると便利なので、exceldumpなるcheckboxが使えます。

フォームだけだと、

先に述べたemptyなrepositoryは灰色になっています。

前3部作と連携するとローカルおよびリモートレポジトリ全部を把握できることになりますが、頻繁に両者をアップデートしていると更新がめんどくさいですね。ということでたまにしか更新していませんが、最新版をnameベースで検索したい時は、使えるかもですね。そもそもリモートレポジトリサーバーが多すぎるのがダメですかね?何を主に使うかは、意見の分かれるところだと思います。

コメント