#!/bin/sh
#
# func/giturl
#
# a convenient way to display the gitweb URL of a commit-ish
#
# Copyright © 2010 martin f. krafft <madduck@madduck.net>
# Released under the terms of the Artistic Licence 2.0
#
# Source repository: git://git.madduck.net/etc/zsh.git
#

local GITWEB_BASE
GITWEB_BASE=http://git.madduck.net/v

local REMOTE
REMOTE=$(git config --get remote.origin.url)

local part
case "$REMOTE" in
  madduck:pub/*) part="${REMOTE#madduck:pub/}";;
  *)
    echo >&2 "E: I do not know how to translate $REMOTE into a gitweb URL."
    return 1
    ;;
esac

HASH=$(git rev-parse HEAD)
echo $GITWEB_BASE/$part/commitdiff/$HASH