🐚

GitHub のリポジトリ名やownerを取得するシェル

2023/05/03に公開

git のディレクトリで remote に設定されている GitHub リポジトリの owner や repo 名を取得するシェルです。

remote URL の取得

url=$(git config --get remote.origin.url)
echo $url
# git@github.com:elzup/kit-sh.git

url から owner と repo をパースする

id=$(echo $url |sed -e 's/.*github.com.\(.*\).git/\1/')
# elzup/kit-sh

echo ${id#*/}
# kit-sh
echo ${id%/*}
# elzup

bash の変数展開でパターン照合演算子を使っています。
echo ${id#*/}id の先頭から / までを削除します。
echo ${id%/*}id の末尾から / までを削除します。

GitHubで編集を提案

Discussion