使用-a的路径对bash函数没有意义

it_*_*ure 4 git

这是我的bash功能.

push() {
> cd /var/www/html/wp
> git init
> git add *
> git commit -am  $1
> git push -f origin master
> }
Run Code Online (Sandbox Code Playgroud)

我想执行它.

debian8@hwy:$push 'to delete file test'       
Reinitialized existing Git repository in /var/www/html/wp/.git/        
fatal: Paths with -a does not make sense.     
Run Code Online (Sandbox Code Playgroud)

如何修复我的bash函数推送?

rm/var/www/html/wp/test之后,可以成功执行以下命令

 cd /var/www/html/wp
 git init
 git add *
 git commit -am  'to delete file test'
 git push -f origin master
Run Code Online (Sandbox Code Playgroud)

我只想写一个bash函数push来添加参数,运行它如

push  'to delete file test'
Run Code Online (Sandbox Code Playgroud)

让push作为

 push(){
 cd /var/www/html/wp
 git init
 git add *
 git commit -am $1
 git push -f origin master
 }
Run Code Online (Sandbox Code Playgroud)

giu*_*sti 5

看起来$1正在扩展到几个参数,Git将第一个作为提交消息,其余作为文件.警惕"$1"报价.

但我必须补充说,该脚本存在一些问题.这是非常不安全的.您正在执行多个命令而不检查一次成功或输入是否合适.这样做并强制执行Git推送可能会让您在以后遇到大麻烦.