我有一个带有降价文件的秘密Github要点。我创建了三个简单的.png
图像,这些图像需要嵌入到文档中,因为它显示在gist URL上。
我克隆了我的要点,添加了图像文件,并推送到掌握。现在,在gist URL上,除了markdown文件外,我还会看到图像文件。
但是,每当我添加以下简单代码以尝试显示图像时,它都不起作用(它只是超链接文本“Image”,如果单击,则会将我带到一个显示“未找到”的页面,即使我可以验证它是否是链接到图像文件的URL地址):
![Image:](https://gist.github.com/my_username/3998173298588e8dc9d3#file-file_name-png)
但是,在我的降价文档的本地副本中,如果我使图像链接引用相对文件路径(例如![Image:](file_name.png)
),那么如果我在降价查看器中查看文档,它就会按预期工作作为我本地机器上的Mou。无论基于本地URL还是基于github的URL,它仍无法在gist URL上运行。
从我读过的所有内容来看,这似乎是将图像添加到gist的正确方法(克隆gist repo,添加文件,推送到master,然后从它们生成的Github URL链接它们)。
它不起作用......我错过了哪一步?
答案 0 :(得分:4)
最简单的方法是将图像粘贴到gist注释中并拉出提供的网址。
该链接将是静态的,不会反映对gist中图像所做的任何更改,但您也不需要通过imgur
答案 1 :(得分:3)
有关详细信息,请参阅this answer,但简短的回答是它在gists中不起作用:/。
如果你查看this gist post的来源,所有嵌入的图像实际上都是在imgur上托管的,即使图像也附加在要点上。
答案 2 :(得分:1)
参加聚会有点晚了,但是我最近遇到了类似的要求,因此提出了一种解决方案,我认为该解决方案适合作为答案供以后在这里参考。具体来说,此答案直接满足了OP对@Jared Forsyth答案的评论中所述的要求之一:
...要点与我公司必须保留在源代码管理中的工作有关。使用我的GitHub凭据,将所有内容存储在基于要点的仓库中并共享链接是没有问题的,但是将图像托管在其他任何地方都是一个问题。
首先,原因
![Image:](https://gist.github.com/my_username/3998173298588e8dc9d3#file-file_name-png)
不起作用是因为这是gist网页中显示file_name.png
文件的部分的片段URL,而 NOt 则是{要点存储库。以下解决方案基于从RemarkableMark的博客How to add an image to a GitHub gist获得的见解。此外,该解决方案基于有关要点的三个观察结果:
file_name.png
,其中https://gist.github.com/<github-username>/<gist-hash>/raw/<commit-hash>/<filename>
是SHA-1哈希确定特定的提交。<commit-hash>
上最新提交的文件。这些观察结果提出了一种解决方案,即添加图像,将图像嵌入markdown并在单独的提交中删除图像,以便可以通过添加了这些图像的提交的SHA-1哈希来嵌入引用它们的图像,并删除这些图像。在随后的提交中,这样它们就不会在要点中单独显示为其他文件。可以通过以下工作流程实施该解决方案:
例如,参见说明here
例如,使用HTTPS克隆到master
目录:
my_gist
git clone https://gist.github.com/<gist-hash>.git my_gist
例如,这里仅添加了OP的cd my_gist
git add file_name.png
git commit -m "added all image files"
,但是一次提交中应该添加所有要嵌入到markdown中的图像文件。
file_name.png
这将输出上一次提交的日志,类似于:
git log -1
可以从中检索提交的SHA-1哈希值(即commit b032e496495cf598a0aae1c6d33e761954e57604 (HEAD -> master)
Author: ########### <###############@users.noreply.github.com>
Date: Mon Oct 15 21:24:01 2018 -0400
added all image files
)
编辑markdown文件,以使用检索到的提交SHA-1哈希代替URL中的b032e496495cf598a0aae1c6d33e761954e57604
来嵌入图像。
<commit-hash>
同样,此示例仅嵌入一个名为![Image:](https://gist.github.com/<github-username>/<gist-hash>/raw/<commit-hash>/file_name.png)
的文件。如果有多个图像,最好将它们全部嵌入一步。然后,提交
file_name.png
git commit -a -m "embedded images in markdown"
同样,此示例仅包含一个名为git rm file_name.png
git commit -m "removed all image files"
的图像文件。如果有多个图像,最好在同一提交中将它们全部删除。
file_name.png