Seu alias não está tentando fazer exatamente o que o git clone
já faz?
$1
não fará nada útil aqui - a expansão de alias do Git simplesmente anexa os parâmetros fornecidos pelo usuário no final do comando configurado; ele não diz ao shell que eles devem ser mapeados em $ @.
Existem duas opções aqui:
-
Defina uma função e execute-a:
yolo = "!fred() { git init && git remote add origin \"$1\" && git pull; }; fred"
Desta forma, $ 1 significará os parâmetros da função e funcionará corretamente.
-
Escreva um script chamado
git-yolo
:(não precisa ser / bin / sh, pode ser bash ou perl ou qualquer coisa)
#!/bin/sh git init && git remote add origin "$1" && git pull
Coloque o script em qualquer lugar nos seus diretórios
$PATH
-configurados, por exemplo %código%. Isso fará com que o Git o reconheça como um subcomando/usr/local/bin/git-yolo
.