46 lines
		
	
	
		
			927 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			927 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
# shellcheck disable=2162
 | 
						|
 | 
						|
function delete_local_branch() {
 | 
						|
    git branch -D "$1"
 | 
						|
}
 | 
						|
 | 
						|
function delete_remote_branch() {
 | 
						|
    git push origin --delete "$1"
 | 
						|
}
 | 
						|
 | 
						|
function list_of_the_branches() {
 | 
						|
    echo
 | 
						|
    echo "List of branches:"
 | 
						|
    echo -e "$(git branch)"
 | 
						|
    echo
 | 
						|
}
 | 
						|
 | 
						|
BRANCH="$1"
 | 
						|
 | 
						|
while true; do
 | 
						|
    [ -z "$BRANCH" ] && {
 | 
						|
        list_of_the_branches
 | 
						|
        read -p "Select branch to remove: " BRANCH
 | 
						|
    }
 | 
						|
    echo "$BRANCH"
 | 
						|
    read -p "Remove locally / remote / both [L/R/B]: " CHOOSE
 | 
						|
    case $CHOOSE in
 | 
						|
        [Bb]*)
 | 
						|
            delete_local_branch "$BRANCH"
 | 
						|
            delete_remote_branch "$BRANCH"
 | 
						|
            unset -f BRANCH
 | 
						|
            ;;
 | 
						|
        [Ll]*)
 | 
						|
            delete_local_branch "$BRANCH"
 | 
						|
            unset -f BRANCH
 | 
						|
            ;;
 | 
						|
        [Rr]*)
 | 
						|
            delete_remote_branch "$BRANCH"
 | 
						|
            unset -f BRANCH
 | 
						|
            ;;
 | 
						|
        *) echo "Please write good answer" ;;
 | 
						|
    esac
 | 
						|
done
 |