X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=topgit.git;a=blobdiff_plain;f=tg-import.sh;h=799efc9a8395228604e1ccf94cc66a0c36144ec9;hp=6a4f79ea27e0116814c271b03046a3f2eb874da4;hb=5aa8cf9d4fba8b6dbbd7878eb78b2600e3736b9a;hpb=4c8ab25482e6f47878090d87a295eba50d04a564 diff --git a/tg-import.sh b/tg-import.sh index 6a4f79e..799efc9 100644 --- a/tg-import.sh +++ b/tg-import.sh @@ -24,6 +24,15 @@ while [ -n "$1" ]; do done +## Make sure our tree is clean + +git update-index --ignore-submodules --refresh || exit +[ -z "$(git diff-index --cached --name-status -r --ignore-submodules HEAD --)" ] || + die "the index is not clean" + + +## Perform import + get_commit_msg() { commit="$1" @@ -52,7 +61,7 @@ process_commit() branch_name=$(get_branch_name "$commit") info "---- Importing $commit to $branch_prefix$branch_name" tg create "$branch_prefix""$branch_name" - git read-tree "$commit" + git cherry-pick --no-commit "$commit" get_commit_msg "$commit" > .topmsg git add -f .topmsg .topdeps git commit -C "$commit"