Você pode usar o globbing estendido no bash:
shopt -s extglob
ls .!(.|git)
Isso também corresponde a . , então você provavelmente precisará
ls .!(|.|git)
Estou ciente de usar .[!.]* para se referir a todos os dotfiles em um diretório com exceção de .. , mas como se pode referir a todos os dotfiles, exceto .. e .git ? Eu tentei várias variações em .[!.||.git]* e .[!.][!.git]* e similares, mas nenhuma se refere aos arquivos pretendidos.
Você pode usar o find:
find . -type f '!' -iname ".git" -exec cp -rv {} /dest/path \;
Ele pesquisará todos os arquivos no diretório atual, mas não incluirá .git , pois usamos ! -iname ( onde ! significa não igual a ) e copiaremos o arquivo para o local de destino
Atualizar
find . -not -path '.' -not -path './.git' -iname '.*'
também podemos usar -iregex em encontrar
find . -not -iregex '.\|./.git' -iname '.*'
ambos os exemplos se referem a todos os dotfiles, exceto por .. e .git no caminho atual