Basta adicionar uma exclusão explícita para .git:
rsync -a --exclude='.git/' --include='*.c' --include='*.sh' --include='*/' --exclude='*' ~/c/ ~/Dropbox/Public/c
Outra opção é criar ~/.cvsignore
contendo a seguinte linha junto com qualquer outro diretório que você queira excluir:
.git/