共通で使用されるワークフローの呼び出しを管理する方法

共通で使用されるワークフローの管理方法で悩んでいます。
A、Bそれぞれ別の機能を実装し、AでもBでも共通で使用されるワークフローCを作成しました。
AからもBからも呼び出されるので、フォルダの階層は以下のようにしたいと考えています。

Uipath
└共通ワークフロー
├ C.xaml
A
├main.xaml
B
└main.xaml

そうしたときに、ワークフローファイルの呼び出し(Invoke Workflow file)でCを参照すると、絶対パスで指定されてしまいます。
ファイルは別の環境(開発メンバー)でも修正したいのでgitで管理したいとおもっていますが、そうすると別の環境では親階層(上記の図でいうと、UiPathの階層)の場所が異なる可能性がある為、絶対パスではなく、相対パスで指定が都合がいいとおもいます。
そうしたときに、わざわざ絶対パスで指定されたファイルパスの部分を、以下のように相対パスに書き換える必要が出てきてしまうのですが、この方法だと、呼び出しを行うごとに毎回毎回、ファイルを選択したあとでパスの書き換えを行わないといけません。
“…\共通ワークフロー\C.xaml”
image

他に考えた方法は、
"…\共通ワークフロー"の部分を変数で持たせる。UiPathまでの絶対パスの階層を変数で持たせるという方法も考えましたが、呼び出しを行うごとに毎回やらないといけないことには変わりありません。
一通り完成したあとでgrep置換してパスを書き換えるといった方法も考えましたが、安全とはいえません。

皆さんは、他の環境でも開発をしたい場合、
共通で使用されるワークフローをどのように管理していますか?よい方法があれば教えてください。

こんにちは
バージョンにもよりますがライブラリ機能では問題ありますでしょうか?

1)各パソコンに共通で持っているドライブに共通部品フォルダを作成し、そこにxamlを配置する。
2)各パソコンからアクセスできるネットドライブに共通部品フォルダを作成し、そこにxamlを配置する。
3)ライブラリ機能にて、共通部品をNUPKGにする形で、Orchestratorに登録。パッケージを管理からインストールする。

その共通部品(C.xaml)に修正が入った場合、3)、2)、1)の順で再配布性が悪くなると考えています。

Yoichiさん早速の返答、ありがとうございます
ライブラリは使用したことがありませんでした
先ほど調べて試して見ましたが、デバッグ実行で中は見れないのですね。
よく、テストで中の動作も確認したりしていたのですが、
それができないのが少し困るのですが、
Cを修正した場合に、勝手に書き換わらないのはいいですね。
ひとまず、HANACCHIさんの回答のほうで試そうと思いますが、
ライブラリ化も視野に入れてみたいと思います。
ありがとうございました。

HANACCHIさん、早速の回答ありがとうございます。
1)か2)にしたいと思います。
たしかに、各環境、共通で持っている場所を使えば、
絶対パス指定で問題ないので、パスを書き換える必要がないです。
3)の方法は、1)、2)で管理してみて、弊害等ありましたら検討してみたいとおもいます。
ありがとうございました