Captura de saída do comando git?

Estou escrevendo um script para automatizar a configuração de novos projetos para mim.

isso inclui puxar para baixo um repositório do github.

O que eu quero fazer é ter alguma saída do meu script, depois chamargit clone $repo

Eu quero mostrar a saída desse comando enquanto ele estiver rodando, mas então quando ele tiver rodado se ele tiver rodado com sucesso, substitua sua saída (note apenas a saída dos comandos do git, eu ainda quero a saída antes disso)repository successfully cloned e se falhar, deixe a saída lá e imprimarepository cloning failed.

Como posso fazer isso?

Abaixo está meu script atual (bastante simples).

#! /bin/bash

# -p project name

templateurl="[email protected]:xxx/xxx-site-template.git"

while getopts ":p:" opt; do #eventually I'll add more options here

case $opt in
  p)
    project=$OPTARG
    ;;
  \?)
    echo "Invalid option: -$OPTARG" >&2
    exit 1
    ;;
  :)
    echo "Option -$OPTARG requires an argument." >&2
    exit 1
    ;;
esac
done

if [ -z "$project" ]; then
    echo "Project name required"
    exit 1
fi

clear
echo "|==========================|"
echo "| New xxx Project Creator  |"
echo "|==========================|"
echo "Project: $project"

if [ -d "$project" ]; then
    echo "Directory $project already exists!"
    exit 1
fi


mkdir $project
if [ ! -d "$project" ]; then
    echo "Failed to create project directory!"
    exit 1
fi

echo "Cloning xxx Template repository"
git clone $templateurl $project

questionAnswers(2)

yourAnswerToTheQuestion