29 lines
705 B
Bash
29 lines
705 B
Bash
|
#!/bin/bash
|
||
|
set -x
|
||
|
commit_before_pull=""
|
||
|
|
||
|
save_commit_before_pull () {
|
||
|
commit_before_pull=$(git reflog | grep "HEAD@{0}" | cut -d" " -f1)
|
||
|
if ! [ -z "$commit_before_pull" ]; then
|
||
|
if grep -qE "^[[:xdigit:]]{6,}$" <<< $commit_before_pull; then
|
||
|
return 0
|
||
|
fi
|
||
|
fi
|
||
|
commit_before_pull=""
|
||
|
return 1
|
||
|
}
|
||
|
# save_commit_before_pull
|
||
|
|
||
|
revert_to_commit_before_pull () {
|
||
|
if ! [ -z "$commit_before_pull" ]; then
|
||
|
if grep -qE "^[[:xdigit:]]{6,}$" <<< $commit_before_pull; then
|
||
|
`git reset --hard "$commit_before_pull"`
|
||
|
if [ $? -eq 0 ]; then
|
||
|
return 0
|
||
|
fi
|
||
|
fi
|
||
|
fi
|
||
|
return 1
|
||
|
}
|
||
|
# revert_to_commit_before_pull
|