]>
git.madduck.net Git - etc/mrsetup.git/blobdiff - mrsetup
madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
MY_GIT_SERVER=git.madduck.net
MY_GIT_REPOS='~/git'
MY_GIT_SERVER=git.madduck.net
MY_GIT_REPOS='~/git'
-MY_ACCOUNT_GIT_REPO=$MY_GIT_REPOS/accounts/$(whoami)@$(hostname --fqdn).git
+MY_ACCOUNT="$(whoami)@$(hostname --fqdn)"
+MY_ACCOUNT_GIT_REPO=${MY_GIT_REPOS}/accounts/${MY_ACCOUNT}.git
MY_GIT_URL_BASE=ssh://$MY_GIT_SERVER
MY_MR_REPO_URL=$MY_GIT_URL_BASE/$MY_GIT_REPOS/pub/etc/mr.git
MY_ACCOUNT_REPO_URL=$MY_GIT_URL_BASE/$MY_ACCOUNT_GIT_REPO
MY_GIT_URL_BASE=ssh://$MY_GIT_SERVER
MY_MR_REPO_URL=$MY_GIT_URL_BASE/$MY_GIT_REPOS/pub/etc/mr.git
MY_ACCOUNT_REPO_URL=$MY_GIT_URL_BASE/$MY_ACCOUNT_GIT_REPO
+if [ -z "${SSH_AUTH_SOCK:-}" ]; then
+ echo E: '$SSH_AUTH_SOCK' is not set. >&2
+ exit 1
+fi
+
if [ ! -x "$(command -v git)" ]; then
echo E: git is not installed. >&2
if [ ! -x "$(command -v git)" ]; then
echo E: git is not installed. >&2
fi
if [ -e .mrconfig ]; then
echo E: .mrconfig already exists. >&2
fi
if [ -e .mrconfig ]; then
echo E: .mrconfig already exists. >&2
fi
if [ -d "$MR_FGIT" ]; then
echo E: "$MR_FGIT" already exists. >&2
fi
if [ -d "$MR_FGIT" ]; then
echo E: "$MR_FGIT" already exists. >&2
fi
if [ -d ".git" ]; then
echo E: .git already exists. >&2
fi
if [ -d ".git" ]; then
echo E: .git already exists. >&2
fi
if [ -d code/mr ]; then
fi
if [ -d code/mr ]; then
echo W: code/mr already exists, let us hope for the best... >&2
else
echo E: code/mr already exists. >&2
echo W: code/mr already exists, let us hope for the best... >&2
else
echo E: code/mr already exists. >&2
fi
else
echo I: cloning mr into ${MR_CODE}...
fi
else
echo I: cloning mr into ${MR_CODE}...
echo I: setting up base...
$MR_CODE/mr co
echo I: setting up base...
$MR_CODE/mr co
-if ssh $MY_GIT_SERVER "test -d $MY_ACCOUNT_GIT_REPO" ; then
+if ! ssh $MY_GIT_SERVER "test -d $MY_ACCOUNT_GIT_REPO" </dev/null ; then
echo I: checking out local git repository...
dir="$(mktemp -d home.XXXXXXXX)"
trap "rm -rf $dir" 0
echo I: checking out local git repository...
dir="$(mktemp -d home.XXXXXXXX)"
trap "rm -rf $dir" 0
mv "$dir"/co/.git .
git checkout-index --quiet --index --all
git reset HEAD
mv "$dir"/co/.git .
git checkout-index --quiet --index --all
git reset HEAD
echo
else
echo I: creating remote git repository for this account...
echo
else
echo I: creating remote git repository for this account...
- ssh $MY_GIT_SERVER "GIT_DIR=${MY_ACCOUNT_GIT_REPO} git --bare init"
+ ssh $MY_GIT_SERVER "
+ GIT_DIR=${MY_ACCOUNT_GIT_REPO} git --bare init
+ echo 'account setup for $MY_ACCOUNT'
+ "
echo I: setting up local git repository...
git init
git remote add origin $MY_ACCOUNT_REPO_URL
echo I: setting up local git repository...
git init
git remote add origin $MY_ACCOUNT_REPO_URL
git add .mrconfig
git commit -m'initial checkin'
git push --all
git add .mrconfig
git commit -m'initial checkin'
git push --all
+echo I: spawning a shell...
+$SHELL --interactive --login
+
+echo I: back from the shell.
+