はじめに
UiPathではGitHub(ギットハブ)を使用してプロジェクト管理を行うことができます。
初心者向けで簡単にまとまっている記事がなかったのでまとめてみました。
- 第1回 UiPathでGitHub管理を始める
- 第2回 GitHubでissueを立てて、ブランチを切る←今ココ
- 第3回 GitHubでmergeする
第1回ではGitHubのアカウントを作成し、リポジトリを立ててUiPathとつないだところまでやりました。
この記事でわかる・できること
- GitHubでissueを立てる方法が分かる
- GitHubでブランチを作成する方法が分かる
- UiPathでブランチを切り替えて作業する方法が分かる
この記事で触れないこと
- merge(次回やります)
この記事の対象者
- UiPath Studio 開発者
- GitHubとか差分管理はなんとなく聞いたことあるけどよくわからない…な人
- UiPathのプロジェクト管理に苦しんでいる人
動作環境・使用するツールや言語
- Windows10
- UiPath Studio v2023.10
- GitHub
記事の流れ
- issueの説明
- ブランチの説明
- GitHubでissueを立てる
- GitHubでブランチを作成する
- UiPath Studioでブランチを切り替えて作業する
issue(イシュー)とは
GitHubの概念の1つです。
issueとは作業を計画、議論、追跡できるように各リポジトリごとに作成できるものです。
簡単に言うとやりたいこと、やらなければいけないことです。
次のブランチと紐付けることができます。
ブランチとは
Gitの重要な概念の1つです。
本番には影響を及ぼさずに別の管理状態に分岐し、好きに開発することが出来る機能です。
ある機能が完成できたと思ったらマージという機能で本番に合流させることができます。
想定している状況
第1回で開発したのはログを出力するロボットでした。
これを本番としてパブリッシュしているとします。
ここで、ユーザーからの依頼でメッセージボックスに変更することとしました。
そして、この機能変更はうまくいくか分からないとします。
…こんな時にいきなりロボットを変更して上書き保存するのは不安ですよね?
そして、UiPath Studioではデバッグの時点でプロジェクトは上書き保存されてしまいます。
さらに、ユーザーからの依頼と開発メモなんかを結び付けられたらもっと良いと思いませんか?
こんな時、GitHubでissueを立てることで開発メモやタスクを作成でき、
そこからブランチを作る(ブランチを切る)ことで思い切った開発ができます。
それでは、やってみましょう!
GitHubでの作業方法
GitHubでissueを立てる
前回で立てたリポジトリのページを開いてください。
タブの中にissue
があるのクリックしてください。
タイトルと中身を入力するように求められるので
- Add a title
ログをメッセージボックスに変更する
- Add a description
ユーザーに知らせる必要があるので変更する
と入力しましょう。内容の方は「なぜ必要なのか」や「依頼の内容」などを分かりやすく記載すると良いでしょう。
(タイトルと説明は後から編集できるので安心してください)
入力できたらSubmit new issue
をクリックしましょう。
新しいissueが立ちました!#1がこのissueの番号になります。この数字を覚えておきます。
GitHubでブランチを作成する
ここからは先ほど作成したissueを解決するためにブランチを作成していきます。
issueページの右側のDevelopmentの欄に、Create a branchがあるのでクリックしてください。
ブランチ作成画面が出ました。ブランチの名前を入力しましょう。
今回はログをメッセージボックスに変更するissueなのでブランチ名を
feature-#1-change-from-log-to-msgbox
としてみましょう。
- feature: 機能変更、追加
- #1: issue番号(これを付けるとGitHub上でissueと紐付けしてくれる)
- change-from-log-to-msgbox: ログをメッセージボックスに変更
入力できたらCheckout locally
のままCreate branch
を選択しましょう。
何かメッセージが出ますが×で閉じます。
ブランチがissueと紐付いた形で作成できました!
UiPath Studioでの作業方法
ここからはUiPath Studioでの作業になります。
前回作成したGitHubリポジトリに接続されているプロジェクトを開いてください。
フェッチする
そのままではGitHub上の更新をUiPath Studio側は知らないため、フェッチ(fetch)という作業が必要になります。
UiPath Studioではリモートブランチを更新
と表記されているのでこれをクリックしてください。
これによって作成したブランチ情報を読み込むことができます。
ブランチを切り替える
無事に更新が完了したら、再度右下のmainをクリックしてください。
先程GitHub上で作成したブランチにorigin
が付いたOrigin/feature-#1-change-from-log-to-msgbox
が出ていれば成功です!
クリックするとブランチを切り替えできます。
作業する
それでは、ブランチを切り替えることができたので後は大胆に変更していきましょう。
issueに従ってログをメッセージボックスに変更してください。
コミット、プッシュする
上書き保存後、前回学習したようにコミットとプッシュをしましょう!
ただし、今回はコミットメッセージにissue番号の#1
を付けることを忘れないでください。
これもブランチと同様に、GitHub上でissueと関連付けすることができます。
GitHubで確認する
プッシュができたら、GitHub上で確認してみましょう!
何か出ていますね。とりあえず無視して、2 branches
のタブをクリックしてください。
Branchesの中に、main
ブランチ以外に先程作業したfeature-#1-change-from-log-to-msgbox
ブランチがあります。
クリックしてみましょう。
先程プッシュした変更が表示されました!mainブランチに戻すとこの変更は表示されません。
つまりどういうことか
つまり、本番であるmainブランチには影響を及ぼさずに好き勝手に編集ができるということになります。
これを使えば安心して開発することができます。
では、無事にデバッグも完了し、本番にこのブランチで作業した変更を反映したい! ときはどうすればいいのでしょうか?
いよいよ次回、merge(マージ)機能を使って反映していきます。
参考資料
まとめ
だんだん差分管理システムの恩恵を受けてきている実感が……ありますかね?
今回実施したような
- issueをGitHub上で作成する
- ブランチを切る
- UiPath Studioで作業をする
といった流れで開発することをissueドリブンといいます。
機能や修正ごとに作業を区切ることができるのでおすすめの開発手順になります!
つづく