lien github vers la page wiki de README

91

Comment créer un lien depuis un fichier README.md vers une page Wiki dans github? Chaque exemple semble montrer des liens d'une page wiki vers une autre page wiki, ou d'un fichier README vers un autre fichier dans le référentiel. Mais aucun ne montre un lien de l'un à l'autre

voile
la source
Tu as raison. « d'un fichier README vers un autre fichier dans le référentiel » fonctionne, ref officiel help.github.com/articles/relative-links-in-readmes~~V~~singular~~3rd blog officiel github.com/blog/1395-relative-links-in-markup- fichiers , voir aussi bibwild.wordpress.com/2013/01/30/… .
Stéphane Gourichon le
Compréhension des raisons pour lesquelles un lien de README vers wiki n'est pas si souhaitable: "Bien sûr, vous pouvez créer un lien vers votre wiki - mais le wiki n'est pas versionné avec le code source, et vous voulez créer un lien vers la version des documents qui vont avec l'instantané exact du dépôt source que vous regardez. Bien sûr, vous pouvez créer un lien à l'aide d'hyperliens URL absolus - mais même problème, vous créez toujours un lien vers le maître, lorsque vous souhaitez créer un lien vers le fichier dans le même instantané que le lecteur regarde le README dans. " Source: bibwild.wordpress.com/2013/01/30/…
Stéphane Gourichon

Réponses:

67

Vous devrez utiliser une URL absolue par opposition à une URL relative.

Par exemple:

[Sites Using React](https://github.com/facebook/react/wiki/Sites-Using-React)
maxdeviant
la source
4
ok, c'est ce que je pensais - je voulais juste m'assurer qu'il n'y avait pas de meilleur moyen.
veilig
2
Dans le document lié par @ jmar777, il met en garde contre l'utilisation d'URL absolues: "Les utilisateurs clonant votre référentiel auront beaucoup plus de mal à faire fonctionner les liens que prévu."
Dave Sexton
@DaveSexton Cela fait spécifiquement référence à la liaison vers d'autres fichiers dans le référentiel (qui sera toujours relatif au README). Lorsque vous créez un lien vers quelque chose d'externe (comme un wiki), vous souhaitez utiliser des URL absolues.
maxdeviant
92

Je viens de tomber sur cette question et j'ai vu que c'était impossible, mais j'ai quand même obstinément continué à essayer. Bonne nouvelle, car cela peut être fait avec des liens relatifs!

Si vous regardez la documentation pour les liens relatifs sur GitHub , vous pouvez voir qu'il prend en charge ./et les ../opérandes.

Étant donné que votre README est situé à:

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

... et le wiki se trouve à:

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

... cela signifie que vous pouvez simplement revenir du README au wiki, comme ceci:

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


Mise à jour: Comme certaines personnes l'ont souligné dans les commentaires (merci!), Sachez que ces liens relatifs se briseront sur les clones et les fourchettes, alors assurez-vous de peser cela dans votre décision!

jmar777
la source
15
Intéressant, mais notez que le README.md peut être visualisé à partir d'un clone local au lieu du Web. Dans ce cas, la seule chose qui fonctionne est un lien avec une URL absolue.
Stéphane Gourichon le
1
Bon point, @ StéphaneGourichon, je n'avais pas envisagé de visionner localement le Readme. Bien que je suppose que si des liens relatifs sont souhaités, c'est une limitation acceptable.
jmar777
2
Vous pouvez cloner le wiki localement en tant que
dépôt
3
Mot d'avertissement: lorsque vous affichez des fichiers uniques comme un objet README.mdblob spécifique pour une validation, cela ne fonctionnera pas.
kaiser
Comme mentionné par Stéphane Gourichon, les liens relatifs ne sont pas toujours la voie à suivre. Un autre exemple est si vous souhaitez que votre package soit installable via une plate-forme open source tierce. Pour Python, c'est PyPi. PyPi se chargera dans la description, mais tous les liens relatifs seront rompus. Vous devez utiliser des URL absolues dans ce cas.
cgnorthcutt
1

Juste pour ajouter celui-ci, si vous voulez faire référence à votre fichier de dépôt depuis l'intérieur du wiki ../../blob/master/. Combiné avec la réponse de jmar777, cela permet d'intégrer complètement le code et le wiki et de supprimer le besoin de readme.md gonflé.

Pour le faire fonctionner localement ainsi que votre structure de fichier devrait être

./Wiki/YourWikiRepo
./blob/master/YourCodeRepo
DfAC
la source
1

J'ai trouvé que j'avais besoin de reculer de 3 niveaux contre 2 niveaux comme décrit dans l'approche de jmar777.

Quand j'ai utilisé

../../wiki

Le lien généré était https://github.com/<username>/blob/wiki

J'avais besoin d'utiliser:

../../../wiki

Cela a généré https://github.com/<username>/wiki

Grendel
la source
1

J'utilise GitLab. Mon lien vers ma page Wiki ressemble à ceci.

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

J'ai essayé les autres recommandations publiées ici, mais cela a continué à changer l'URL avec des réécritures qui ont rompu le lien.

LinuxGuru
la source