Может ли git хранить mime-тип файла, как это делает SVN, для просмотра html? - PullRequest
9 голосов
/ 21 августа 2010

Я только что отправил свой первый репозиторий на github, но когда я просматриваю свой html, он используется как txt.Это то, что я могу установить, как svn реквизит?Или это просто неадекватность GitHub?

Кажется, я не могу найти что-то полезное на git, github или здесь.

Ответы [ 3 ]

8 голосов
/ 22 августа 2010

Во-первых, Subversion поддерживает (версионные) свойства (простые ключ = значение пары) для файлов, каталогов и ревизий. Это включает в себя svn:mime-type свойство для файла. Этот подход (эта функция) выглядит как остатки оригинального механизма хранения BerkeleyDB и напоминает немного «разветвления ресурсов» в (старых?) Файловых системах MacOS.

Ближайший эквивалент свойств файла Subversion в Git будет gitattributes (атрибуты для каждого пути). Вы можете определить mime-type gitattribute, но в настоящее время ни один инструмент Git (известный мне) не использует его. Обратите внимание, что в отличие от Subversion gitattributes хранятся в обычном файле: файл .gitattributes в дереве (который может быть версионным) и файл .git/info/attributes пользователя репозитория, который можно редактировать в обычном редакторе, и не только используя команды SCM.


Во-вторых, mime-types или mimetype-подобные свойства или атрибуты на самом деле не нужны. Gitweb (и, возможно, другие интерфейсы git) используют файл с расширением для отображения mimetype (по умолчанию /etc/mime.types), например, Файлы * .html обслуживаются в режиме «raw» (т. е. действие «blob_plain») обслуживаются с типом содержимого text / html, см., например, http://repo.or.cz/w/git.git/blob_plain/html:/gitattributes.html

В веб-интерфейсе GitHub отсутствует то, что http://github.com/git/git/raw/html/gitattributes.html обслуживается типом содержимого text / plain ...

5 голосов
/ 21 августа 2010

Git, в отличие от SVN, не имеет отношения к отдельным файлам, а к коммитам, поэтому я считаю, что вы не можете устанавливать для файлов реквизиты типа mime.С другой стороны, github - это «сайт хостинга кода», который управляет вашими хранилищами кода и занимается только показом кода.Исключением из этого правила являются файлы README, в которых вы можете сортировать, указывать различные форматы (например, .markdown) и отображать их в виде полу-HTML и вики-страниц.

Если вы хотите разместить свои файлы HTML(как в веб-сервере), то GitHub не место для этого.Скорее, вы можете держать свои файлы под контролем версий github, но проверяйте и обслуживайте их с веб-сервера, такого как apache.

1 голос
/ 07 августа 2012

Расширение файла для отображения MIME-типа, в лучшем случае, не работает. Два примера среди многих. Пролог использовал расширение .pl задолго до того, как появился Perl. Файлы с расширением .txt могут содержать, например, Уценка текста и часто есть веские причины не использовать расширение .md или аналогичное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...