最近我加入了GitHub。我在那里主持了一些项目。

我需要在README文件中包含一些图像。我不知道该怎么做。

我搜索了一下,但得到的只是一些链接,告诉我“在web上托管图像并在README.md文件中指定图像路径”。

是否有任何方法可以在不在任何第三方网络托管服务上托管图像的情况下做到这一点?


当前回答

许多张贴的解决方案都不完整或不合我的口味。

像imgur这样的外部CDN为该链添加了另一个工具。无聊的。在问题跟踪程序中创建虚拟问题是一种黑客行为。它会造成混乱,让用户感到困惑。将此解决方案迁移到fork或脱离GitHub是一件痛苦的事。使用gh-pages分支会使URL变得脆弱。另一个在维护gh页面的项目中工作的人可能不知道一些外部信息,这取决于这些图像的路径。gh-pages分支在GitHub上有一个特殊的行为,这对于托管CDN图像是不必要的。在版本控制中跟踪资产是一件好事。随着项目的发展和变化,管理和跟踪多个用户的变化是一种更可持续的方式。如果图像适用于软件的特定版本,则最好链接不可变图像。这样,如果稍后更新图像以反映软件的更改,任何阅读该版本自述文件的人都会找到正确的图像。

受这一要点启发,我的首选解决方案是使用带有特定修订永久链接的资产分支。

git checkout --orphan assets
git reset --hard
cp /path/to/cat.png .
git add .
git commit -m 'Added cat picture'
git push -u origin assets
git rev-parse HEAD  # Print the SHA, which is optional, you'll see below.

构造一个“永久链接”到图像的这个版本,并将其包装在Markdown中。

然而,手动查找提交SHA是不方便的,因此,作为快捷键,按Y键可以永久链接到特定提交中的文件,正如这个help.github页面所说的那样。

要始终显示资产分支上的最新图像,请使用blob URL:

https://github.com/github/{repository}/blob/assets/cat.png 

(从同一个GitHub帮助页面,文件视图显示分支上的最新版本)

其他回答

这个对我有用!!!。

![alt text](https://github.com/[username]/[reponame]/blob/[branch]/image.jpg?raw=true)

alt text是在图像URL不存在的情况下要显示的可选文本。

user_name是您的GitHub用户名。reponame是您的GitHub repo名称。

此答案也可在以下位置找到:https://github.com/YourUserAccount/YourProject/blob/master/DirectoryPath/ReadMe.md

使用以下方式显示回购中的图像:

前置域:https://raw.githubusercontent.com/

附加标志:?消毒=真&原始=真

使用<img/>标记

Eample url works for svg, png, and jpg using:

域名:raw.githubusercontent.com/用户名:YourUserAccount/回购:YourProject/分行:YourBranch/路径:DirectoryPath/文件名:example.png

适用于SVG、PNG和JPEG

 - `raw.githubusercontent.com/YourUserAccount/YourProject/YourBranch/DirectoryPath/svgdemo1.svg?sanitize=true&raw=true`

使用后显示的工作示例代码如下:

**raw.githubusercontent.com**:
<img src="https://raw.githubusercontent.com/YourUserAccount/YourProject/master/DirectoryPath/Example.png?raw=true" />

<img src="https://raw.githubusercontent.com/YourUserAccount/YourProject/master/DirectoryPath/svgdemo1.svg?sanitize=true&raw=true" />

raw.githubusercontent.com:

谢谢:- https://stackoverflow.com/a/48723190/1815624- https://github.com/potherca-blog/StackOverflow/edit/master/question.13808020.include-an-svg-hosted-on-github-in-markdown/readme.md

用桌子突出,这会给它带来独特的魅力

表语法为:

按符号分隔每个列单元格|

表格标题(第一行)由第二行由---

|第1列|第2列||------------|-------------||图像1 |图像2|

输出

现在,如果使用两个图像,只需在图像1和图像2处放置<img src=“url/relativePath”>

注意:如果使用多个图像只是包含更多列,则可以使用width和height属性使其看起来可读。

实例

|第1列|第2列||------------|-------------||<img src=“https://media.wired.com/photos/5926db217034dc5f91becd6b/master/w_582,c_limit/so-go-s.jpg“width=”250“>|<img src=”https://mk0jobadderjftub56m0.kinstacdn.com/wp-content/uploads/stackoverflow.com-300.jpg“width=”250“>|

间距无关紧要

输出图像

帮助人:adam-p

许多张贴的解决方案都不完整或不合我的口味。

像imgur这样的外部CDN为该链添加了另一个工具。无聊的。在问题跟踪程序中创建虚拟问题是一种黑客行为。它会造成混乱,让用户感到困惑。将此解决方案迁移到fork或脱离GitHub是一件痛苦的事。使用gh-pages分支会使URL变得脆弱。另一个在维护gh页面的项目中工作的人可能不知道一些外部信息,这取决于这些图像的路径。gh-pages分支在GitHub上有一个特殊的行为,这对于托管CDN图像是不必要的。在版本控制中跟踪资产是一件好事。随着项目的发展和变化,管理和跟踪多个用户的变化是一种更可持续的方式。如果图像适用于软件的特定版本,则最好链接不可变图像。这样,如果稍后更新图像以反映软件的更改,任何阅读该版本自述文件的人都会找到正确的图像。

受这一要点启发,我的首选解决方案是使用带有特定修订永久链接的资产分支。

git checkout --orphan assets
git reset --hard
cp /path/to/cat.png .
git add .
git commit -m 'Added cat picture'
git push -u origin assets
git rev-parse HEAD  # Print the SHA, which is optional, you'll see below.

构造一个“永久链接”到图像的这个版本,并将其包装在Markdown中。

然而,手动查找提交SHA是不方便的,因此,作为快捷键,按Y键可以永久链接到特定提交中的文件,正如这个help.github页面所说的那样。

要始终显示资产分支上的最新图像,请使用blob URL:

https://github.com/github/{repository}/blob/assets/cat.png 

(从同一个GitHub帮助页面,文件视图显示分支上的最新版本)

如果您想显示任何网站上托管的图像(假设url为“http://abc.def.com/folder/image.jpg”),那么在README.md文件中使用以下语法:![alt-text](<http://abc.def.com/folder/image.jpg>)

只需在浏览器中浏览图像(可以通过单击图像)。它可以是任何网站,包括你的或其他人的github托管图像。从浏览器地址栏中复制url,即要在上述语法中使用的“image_url”。


对于托管在您自己的github存储库中的图像,除了上述url格式之外,您还可以使用相对路径![alt-text](<path_relative_to_current_github_location/image.jpg>)如果图像与README.md文件位于同一文件夹中(相对路径url的特殊情况),则可以使用:![alt-text](<image.jpg>)


注意url周围的尖括号“<”和“>”。有时,这些是url工作所必需的。