Я развернул свой веб-сайт Hugo с помощью Netlify, но после моих последних изменений я продолжаю получать ту же ошибку, которая выглядит следующим образом:
Failed during stage 'deploying site': Invalid filename 'tags/c#/page/1/index.html'. Deployed filenames cannot contain # or ? characters
Я не могу найти в своем репозитории ни одного файла, который содержит такой путь, и мой index.html также не содержит ни одного из этих недопустимых символов. Я попытался отменить изменения, но по-прежнему получаю ту же ошибку развертывания.
Где мне искать в моих файлах репо для диагностики этой проблемы?





Это указывает на автоматически сгенерированный файл, в котором перечислены те страницы, у которых есть «C#» в качестве тега в начале. Так что ищите страницы, на которых есть что-то вроде:
tags: [ 'C#']
в этом.
Чтобы исправить это, вам нужно будет изменить тег на «c-sharp» или что-то подобное.
Или - проверьте, что preserveTaxonomyNames отсутствует в вашем site.yml (или имеет значение false).
Эта ошибка возникает, когда мы используем тег C# или другой тег, содержащий #, в нашем сообщении / уценке, потому что Hugo будет генерировать статические файлы в общей папке в соответствии с тегом, таким как tags/c#/index.xml.
Мы, безусловно, можем заменить его другим тегом, например C-Sharp или аналогичным, но если мы все еще хотим видеть тег C# в нашем сообщении, для этого есть обходной путь.
После замены метки на C-Sharp например.
tags: ["C-Sharp"]
Нам нужно переопределить html-файл, в котором будет отображаться этот новый тег, а затем заменить следующий код
<a href = "{{ "/tags/" | relLangURL }}{{ . | urlize }}/">{{ . }}</a>
с участием
<a href = "{{ "/tags/" | relLangURL }}{{ . | urlize }}/">{{ replace . "-Sharp" "#" }}</a>
Обратите внимание, мы заменяем -Sharp на #, чтобы C# по-прежнему появлялся в нашем сообщении, но URL-адресом был [your-site]/tags/c-sharp/, и Хьюго не создавал tags/c#/index.xml в общей папке. Таким образом, мы можем избежать ошибки.
Это резюмируется из здесь.
Я нашел ошибку! У меня был файл уценки, содержащий тег C#, который явно не поддерживает символ #. Спасибо!