현재 나는 이것을 가지고 있고 이렇게 사용하면 예상대로 작동 addcommit 'test commit'
하지만 그대로 사용하면 addcommit test commit
첫 번째 단어만 보입니다 test
. 이상적으로는 그 기능을 갖고 addcommit test commit
실행하고 싶습니다.git add . && git commit -m 'test commit'
addcommit()
{
git add . && git commit -m "$1"
}
추신. 이 경우 어떻게 작동하는지 이해할 수 없습니다 "$1"
. 아마도 이것이 어떻게 작동해야 하는지 이해하는 좋은 출발점이 될 것입니다.
답변1
"$1"
사용. . . 교체 "$*"
.
IFS
함정을 완전히 피하려면 :
addcommit()
{
local IFS=' '
git add . && git commit -m "$*"
}
이 경우 별칭은 커밋 메시지에 모든 문자를 포함하는 데 도움이 될 수 있습니다.
alias addcommit='_m=$(fc -nl -0); git add . && git commit -m "${_m#*addcommit }" #'
addcommit $foo * $bar
# will use the literal "$foo * $bar" message, without expanding it
(bash 및 ksh93에서 작동)