mirror of
https://github.com/tj/git-extras.git
synced 2026-09-10 07:26:17 -04:00
26 lines
386 B
Bash
Executable file
26 lines
386 B
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
repo=$1
|
|
branch=$2
|
|
prefix=$3
|
|
flat=0
|
|
|
|
if test "$prefix" = "."; then
|
|
prefix=$(mktemp -u 'git-merge-repo.XXXXXXX')
|
|
flat=1
|
|
fi
|
|
|
|
git subtree add -P "$prefix" "$repo" "$branch" "${@:4}"
|
|
|
|
message=$(git log -1 --pretty=%B)
|
|
|
|
if test $flat -eq 1; then
|
|
git stash -u
|
|
mv -i "$prefix"/* ./
|
|
git undo
|
|
git add .
|
|
git commit -am "$message"
|
|
git stash apply
|
|
rm -drf "$prefix"
|
|
fi
|