GIt Alias ​​de configuration con comillas y tubos a través de la command-line

Quiero crear un script sh que configure todos mis alias git. Algunos de los alias tienen pipes ( | ) y doublequotes ( " ). La salida que quiero ver en mi file ~/.gitconfig es:

 [alias] assume = update-index --assume-unchanged unassume = update-index --no-assume-unchanged assumed = "!git ls-files -v | grep ^h | cut -c 3-" 

Sin embargo, ejecutar los siguientes tres commands produce una input assumed incorrecta:

 # setup git aliases per: http://blog.apiaxle.com/post/handy-git-tips-to-stop-you-getting-finetworking/ git config --global alias.assume "update-index --assume-unchanged" git config --global alias.unassume "update-index --no-assume-unchanged" git config --global alias.assumed '"!git ls-files -v | grep ^h | cut -c 3-"' 

El tercer alias ( assumed ) tiene barras invertidas no deseadas:

 assumed = \"!git ls-files -v | grep ^h | cut -c 3-\" 

¿Cuál es la syntax correcta para configurar el alias a través de la command-line ?

No necesita comillas dobles en .gitconfig.

Entonces el command es:

 git config --global alias.assumed '!git ls-files -v | grep ^h | cut -c 3-'