UiPath Studio (Community Edition)でも、GitHubを使ってみたい
でも、エラーが出ます
GitHubに繋ごうとすると、Exceptionが出ます。
例外の、メッセージを読むと、
DllNotFoundException: 'git2-572e4d8'
が、原因のようです。
Community Editionの、フォルダを見ても、git2-572e4d8.dllは、確かに、入っていません。
ファイルを探してきました
Community Editionの、2019.11.0-bata2に、付属している、libgit2sharpという、Gitに接続するライブラリが、git2-572e4d8.dllに、静的にリンクされているのが、原因のようです。(ほかのバージョンの、UiPath Studioだと、git2-xxxxxxx.dllの、xxxxxxx部分は、別のバージョンかもしれません)
今回、このファイル、どこにあるのかな、と、探して回ったのですが、LibGit2Sharp.NativeBinariesに、同梱されていました。
問題は、その、バージョンです。最新版には、同梱されていません。
上記の、git2-572e4d8.dllだと、LibGit2Sharpの、0.22.2のnupkgの中に、入っていました。
https://www.nuget.org/packages/LibGit2Sharp.NativeBinaries/0.22.2
nupkgを、NuGet Package Explorerで(なければ、拡張子を、.zipに変えれば、Explorerでも開けます)git2-572e4d8.dllと、git2-572e4d8.pdbを、取り出します。
取り出し元は、win-x86のフォルダです。win-x64だと、おそらく、エラーになります。
これを、UiPath Community Editionの、app-xx.xx.xxのフォルダ(最新バージョンの、フォルダ)に、コピーします。
あと、手軽にGitHubでの接続を、試すのであれば、
- 最初に、GitHubのWebページで、リポジトリを作ります
- 次に、Main.xamlと、project.jsonを、アップロードします
- 最後に、UiPath Studio画面で、Clone Repositoryから、作成したリポジトリのURLと、GitHubのユーザーアカウントで、接続します
これで、UiPath Community Editionでも、手軽に、GitHubでの差分管理を、できるようになります。
探し方
上で、git2-xxxxxxx.dllを、探したと、書きました。
これは、NuGet.orgの、LibGit2Sharp.NativeBinariesの、過去バージョンを、順番にダウンロードして、dllのファイルを探す、ワークフローを、UiPathで作りました。
もうちょっと、スマートな方法があれば、良いと思うのですが・・・。