Go’s template language strips HTML comments as a safety feature.
You can show them in Hugo with the following syntax:
{{ "<!-- foo bar -->" | safeHTML }}
Remember that you have to do this with every HTML comments.
Go 1.6 enhanced the syntax of the template code. By adding dashes to the code blocks {{ }} you can remove the added whitespace. Look here for more information.
The next version of Hugo will be compiled with Go 1.6. Therefore, you will be able to use this feature in the next release.