Re: bug "$message" literal in commit message

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Yauheni Zablotski <e.zablotski@xxxxxxxxx> writes:

> Hello,
>
> I think I found a bug(or strange behavior) in the git.
> If commit message contains literal "$message" than that literal
> disappears from commit message.
>
> For example:
> -------------
> user@comp ~/cc $ git commit -am "1$message1"
> [master (root-commit) d36a841] 1
>  1 file changed, 0 insertions(+), 0 deletions(-)
>  create mode 100644 1
>
> user@comp ~/cc $ git log
> commit d36a841ae25510ada80246a78225446083fcb3e1
> Author: user <e.zablotski@xxxxxxxxx>
> Date:   Wed Jun 3 18:21:45 2015 +0200
>
>     file
> ----------------
>
> Sorry for having disturbed you

Learn shell ;-)

Instead of "git commit -am", try "echo" and repeat your exercise,
and you would see:

	$ echo "1$message1"
        1

If you prepare a shell variable message1 beforehand, e.g.

	$ message1='This is the contents of message1 variable'
        $ echo "1$message1"
        1This is the contents of message1 variable

Your shell interpolates the value of message1 variable if you write
"$message1" on your command line, way before individual commands
(e.g. echo and git above) that receive the string as its parameter
sees them.

Contrast the above with this invocation after understanding the
above.

	$ git commit -a -m '1$message1'
	$ git log




--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]