ссылка github на вики-страницу из README

91

Как создать ссылку из файла README.md на страницу Wiki в github? Кажется, что каждый пример показывает ссылку с одной вики-страницы на другую вики-страницу или с одного файла README на другой файл в репозитории. Но ни один из них не показывает связь от одного к другому

вуаль
источник
Ты прав. «из одного файла README в другой файл в репозитории» действительно работает, официальная ссылка help.github.com/articles/relative-links-in-readmes официальный блог github.com/blog/1395-relative-links-in-markup- файлы , см. также bibwild.wordpress.com/2013/01/30/… .
Стефан Гуришон
Понимание того, почему ссылка из README на вики не так желательна: «Конечно, вы можете ссылаться на свою вики, но вики не версируется вместе с исходным кодом, и вы хотите указать ссылку на версию документации, которая идет вместе с точный снимок исходного репо, на которое вы смотрите. Конечно, вы могли бы использовать гиперссылки с абсолютными URL-адресами, но та же проблема, вы всегда связываетесь с мастером, когда хотите связать файл в том же снимке, что и читатель смотрит на README в. " Источник: bibwild.wordpress.com/2013/01/30/…
Стефан Гуришон

Ответы:

67

Вам придется использовать абсолютный URL-адрес, а не относительный.

Например:

[Sites Using React](https://github.com/facebook/react/wiki/Sites-Using-React)
maxdeviant
источник
4
хорошо, вот что я подумал - просто хотел убедиться, что нет лучшего способа.
veilig
2
В документе, на который ссылается @ jmar777, предостерегается от использования абсолютных URL-адресов: «Пользователям, клонирующим ваш репозиторий, будет намного сложнее заставить ссылки работать, чем ожидалось».
Дэйв Секстон,
@DaveSexton Это специально относится к ссылкам на другие файлы в репозитории (которые всегда будут относиться к README). При ссылке на что-то внешнее (например, на вики) вы хотите использовать абсолютные URL-адреса.
maxdeviant
92

Я просто наткнулся на этот вопрос и увидел, что это невозможно, но упорно продолжал пытаться так или иначе. Хорошие новости, потому что это действительно можно сделать с помощью относительных ссылок!

Если вы посмотрите документацию по относительным ссылкам на GitHub , вы увидите, что он поддерживает ./и ../операнды.

Учитывая, что ваш README находится по адресу:

https://github.com/<user-name>/<repo-name>/blob/master/README.md

... а вики находится по адресу:

https://github.com/<user-name>/<repo-name>/wiki

... это означает, что вы можете просто вернуться из README в вики, например:

[My Awesome Wiki](../../wiki)


Обновление: как некоторые люди отмечали в комментариях (спасибо!), Имейте в виду, что эти относительные ссылки будут ломаться на клонах и вилках, поэтому обязательно взвесьте это в своем решении!

jmar777
источник
15
Интересно, но обратите внимание, что README.md можно просматривать из локального клона, а не из Интернета. В этом случае работает только ссылка с абсолютным URL.
Стефан Гуришон,
1
Хорошая мысль, @ StéphaneGourichon, я не думал о просмотре Readme поблизости. Хотя, полагаю, если относительные ссылки желательны, это приемлемое ограничение.
jmar777 02
2
Вы можете клонировать вики локально как отдельный
репозиторий
3
Предупреждение: при просмотре отдельных файлов, таких как a, README.mdи определенного большого двоичного объекта для фиксации, это не сработает.
kaiser
Как отметил Стефан Гуришон, относительные ссылки не всегда подходят. Другой пример: если вы хотите, чтобы ваш пакет можно было установить через стороннюю платформу с открытым исходным кодом. Для Python это PyPi. PyPi загрузится в описании, но все относительные ссылки будут разорваны. В этом случае вам нужно использовать абсолютные URL-адреса.
cgnorthcutt 06
1

Просто добавьте к этому, если вы хотите обратиться к своему файлу репо изнутри вики ../../blob/master/. В сочетании с ответом jmar777 это позволяет полностью интегрировать код и вики и устранить необходимость в раздутом readme.md.

Чтобы он работал локально, а ваша файловая структура должна быть

./Wiki/YourWikiRepo
./blob/master/YourCodeRepo
DfAC
источник
1

Я обнаружил, что мне нужно ползти назад на 3 уровня вместо 2, как описано в подходе jmar777.

Когда я использовал

../../wiki

Созданная ссылка была https://github.com/<username>/blob/wiki

Мне нужно было использовать:

../../../wiki

Это сгенерировало https://github.com/<username>/wiki

Грендель
источник
1

Я использую GitLab. Моя ссылка на мою вики-страницу выглядит так.

Checkout the [Wiki page](/%2E%2E/wikis/Welcome)

Я пробовал другие рекомендации, опубликованные здесь, но он продолжал изменять URL-адрес с повторной записью, которая нарушала ссылку.

LinuxGuru
источник