rclaude: add --version (git sha + date + repo path; -dirty if uncommitted)
This commit is contained in:
parent
1f7f0779bd
commit
4b63a48d05
1 changed files with 19 additions and 2 deletions
21
bin/rclaude
21
bin/rclaude
|
|
@ -164,9 +164,26 @@ cmd_resume() {
|
|||
# Dispatch
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
cmd_version() {
|
||||
# Resolve symlink → real script → repo root.
|
||||
_self=$0
|
||||
while [ -L "$_self" ]; do _self=$(readlink "$_self"); done
|
||||
_repo=$(cd "$(dirname "$_self")/.." 2>/dev/null && pwd)
|
||||
if [ -d "$_repo/.git" ] && command -v git >/dev/null 2>&1; then
|
||||
_sha=$(git -C "$_repo" rev-parse --short HEAD 2>/dev/null)
|
||||
_dirty=""
|
||||
[ -n "$(git -C "$_repo" status --porcelain 2>/dev/null)" ] && _dirty="-dirty"
|
||||
_date=$(git -C "$_repo" log -1 --format=%cd --date=short HEAD 2>/dev/null)
|
||||
printf 'rclaude (session-tools) %s%s %s %s\n' "$_sha" "$_dirty" "$_date" "$_repo"
|
||||
else
|
||||
printf 'rclaude (session-tools) %s\n' "$_repo"
|
||||
fi
|
||||
}
|
||||
|
||||
case ${1:-} in
|
||||
list) shift; cmd_list "$@"; exit ;;
|
||||
resume) shift; cmd_resume "$@"; exit ;;
|
||||
list) shift; cmd_list "$@"; exit ;;
|
||||
resume) shift; cmd_resume "$@"; exit ;;
|
||||
-v|--version) cmd_version; exit ;;
|
||||
esac
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue