Есть ли способ создать <a>
привязку URL-адреса , ссылку из файла Markdown, на другой файл в том же хранилище и ветви (или ссылку относительно текущей ветви)?
Например, в основной ветке у меня есть файл README.md, который я хотел бы сделать что-то вроде:
# My Project
is really really cool. My Project has a subdir named myLib, see below.
## myLib documentation
see documentation [here](myLib/README.md)
Это позволило бы мне ссылаться с одного .md на другой в пределах одной и той же ветви и не беспокоиться о том, в какую ветку я нахожусь (избегайте создания абсолютного URL-адреса, включающего имя ветви github.com).
Вот рабочий пример того, что я имею в виду:
- GOTO http://github.com/rynop/testRel , ссылка не работает.
- GOTO http://github.com/rynop/testRel/blob/master/README.md , ссылка работает.
Это ожидается, потому что на данный момент начальный URL находится в ветви. Как мне получить текущую ветку в файле README.md в корне хранилища?
Обновление : я открыл проблему против GitHub для этого запроса функции.
Ответы:
Обновление 30 января 2013 г. , 16 месяцев спустя:
GitHub Blog Post Относительные ссылки в файлах разметки :
Обновление от 20 декабря 2011 года:
Проблема разметки GitHub 84 в настоящее время закрыта technoweenie с комментарием:
12 октября 2011 г .:
Если вы посмотрите на исходный источник самой
README.md
Markdown (!), Относительные пути не поддерживаются.Вы найдете ссылки, такие как:
источник
[Welcome](./wiki/Hello)
Работает для ссылки с одной вики-страницы на другую , где Hello - это еще одна вики-страница в том же репо.[Welcome](Hello)
где Hello - другая вики-страница в том же репо.Например, у вас есть репозиторий, подобный следующему:
Относительная ссылка на
subtext.md
intext.md
может выглядеть так:Относительная ссылка на
subsubtext.md
intext.md
может выглядеть так:Относительная ссылка на
subtext.md
insubsubtext.md
может выглядеть так:Относительная ссылка на
subsubtext2.md
insubsubtext.md
может выглядеть так:Относительная ссылка на
text.md
insubsubtext.md
может выглядеть так:источник
По состоянию на 31 января 2013 года уценка Github поддерживает относительные ссылки на файлы .
Однако есть несколько недостатков, которые обсуждались в этой ветке комментариев .
В качестве альтернативы, вы можете использовать Gitdown, чтобы создать полные URL-адреса для хранилища и даже сделать их осведомленными о ветвлении, например,
Gitdown - это препроцессор GitHub. Он упрощает общие задачи, связанные с ведением страницы документации для репозитория GitHub, например, генерацию оглавления, включая переменные, генерацию URL и получение информации о самом репозитории во время обработки ввода. Gitdown легко интегрируется с вашими строительными скриптами.
Я являюсь автором библиотеки Gitdown.
источник
GitHub может сделать это намного лучше с минимальной работой. Вот обходной путь.
Я думаю, что вы хотите что-то более похожее
или указать на README сам
Удачи
источник
Просто хотел добавить это, потому что ни одно из вышеприведенных решений не сработало, если целевой ссылкой является каталог с пробелами в имени. Если целевая ссылка - это каталог, и в нем есть место, то даже выход из пробела с \ не отображает ссылку на Github. Только решение, сработавшее для меня, использует
%20
для каждого пространства.Например: если структура каталогов это
Чтобы сделать ссылку на
Dir A
README.md,Top_dir
вы можете сделать это:источник
Вы можете ссылаться на файл, но не на папки, и имейте в виду, что Github добавит их
/blob/master/
перед вашей относительной ссылкой (а папкам не хватает этой части, поэтому они не могут быть связаны ни с HTML-<a>
тегами , ни со ссылками на Markdown).Итак, если у нас есть файл
myrepo/src/Test.java
, он будет иметь вид:И чтобы связать его в файле readme, мы можем использовать:
или:
<a href="src/Test.java">This is a link</a>
.(Я думаю,
master
представляетmaster
ветвь, и она отличается, когда файл находится в другой ветке.)источник
Вы можете использовать относительные URL из корня вашего репо с
<a href="">
. Предполагая, что ваш репо названtestRel
, введите следующееtestRel/README.md
:источник
Этот вопрос довольно старый, но он все еще кажется важным, поскольку нелегко поместить относительные ссылки с readme.md на вики-страницы на Github.
Я немного поиграл, и эта относительная ссылка, кажется, работает довольно хорошо:
[Your wiki page](../../wiki/your-wiki-page)
Эти двое
../
будут удалять/blob/master/
и использовать вашу базу в качестве отправной точки. Я не пробовал это на других репозиториях, кроме Github, хотя (могут быть проблемы с совместимостью).источник
Я не уверен, вижу ли я эту опцию здесь. Вы можете просто создать
/folder
в своем хранилище и использовать его напрямую:Никакое имя BLOB, дерева или хранилища не требуется, и оно работает как шарм.
источник
Если вы хотите относительную ссылку на вашу вики-страницу на GitHub, используйте это:
Если вы хотите, чтобы ссылка на файл в хранилище, скажем, ссылалась на какой-то заголовочный файл, а страница вики находится в корне вики, используйте это:
Обоснование последнего состоит в том, чтобы пропустить путь "/ wiki" с помощью "../" и перейти к главной ветви в дереве хранилища без указания имени хранилища, которое может измениться в будущем.
источник