#!/usr/bin/env bash # Ensure three arguments are provided if [ "$#" -ne 3 ]; then echo "Usage: $0 " exit 1 fi language=$1 repo="https://github.com/prescientmoon/$2" name=$3 # Ensure project with that name doesn't exist if [ -d "$language/$name" ]; then echo "Error: Project `$language/$name` already exists" exit 1 fi git fetch $repo josh-filter ":prefix=$language/$name:unsign" FETCH_HEAD && git checkout FILTERED_HEAD FILTER_BRANCH_SQUELCH_WARNING=1 \ git filter-branch --msg-filter "awk \"{print \\\"$language($name): \\\" \\\$0}\"" -f && \ git rebase --root --committer-date-is-author-date --signoff hash=$(git hash) git switch master git merge --allow-unrelated $hash -m "Add `$language/$name`"