bash: pasio dadleuon sgript

Mae gen i gyfres o orchmynion rydw i'n eu rhedeg cyn ymrwymo prosiect git felly rydw i wedi ei roi mewn sgript bash. Ar y diwedd mae gen i floc sy'n ymrwymo:

if [ -z $1 ]; then git commit -a -m "no message"; else; git commit -a -m $1; fi

gyda'r disgwyliad bod y neges yn cael ei throsglwyddo i'r sgript

$ ./dostuff_then_commit "my message"

Pan fyddaf yn gwneud hyn, rwy'n cael hynny

fatal: Paths with -a does not make sense.

oherwydd $ 1 wedi bod wedi'i ddiffinio ond nid yw'r neges yn cael ei phasio'n gywir? A all unrhyw un weld y broblem a / neu awgrymu datrysiad? Diolch SO.

6
задан hatmatrix 28 June 2011 в 03:47
поделиться