ExDoc:获取与私有存储库一起使用的源链接
ExDoc: getting source links working with private repository
我正在尝试为我的项目生成文档。
我已将 {:ex_doc, "~> 0.16", only: :dev, runtime: false}
添加到我的 deps
,将 source_url
设置到我的存储库并 运行 mix docs
.
我正在使用 Github Enterprise,所以我的设置是这样的:source_url: "https://my.private.repo/adam/projname"
但是,在生成的文档中,所有指向源代码的 link 都直接指向 https://my.private.repo/adam/projname
而不是相关文件和行号。
我想做的一个例子:
https://hexdocs.pm/ex_doc/Mix.Tasks.Docs.html
本文件右上角的linklink到https://github.com/elixir-lang/ex_doc/blob/v0.18.3/lib/mix/tasks/docs.ex#L1
在我生成的文档中,每个 link 只是 link 到 https://my.private.repo/adam/projname
。
我试过将 source_ref
设置为 master
,但这没有任何区别。
如何让 ExDoc
生成正确的特定 link 源代码?
这是我的 mix.exs
文件的简化版本:
defmodule ProjectName.MixProject do
use Mix.Project
def project do
[
app: :project_name,
version: "0.1.0",
elixir: "~> 1.6",
deps: deps(),
# Docs
name: "ProjectName",
source_url: "https://my.private.repo/adam/projname"
]
end
end
ex_doc
只会在您使用以下域之一作为 source_url
时自动确定在哪里可以找到文件。 ex_docs source
github.com
bitbucket.com
gitlab.com
在域不同的情况下,您必须在 mix.exs
文件的 docs
部分提供 [=16=]
def project do
[
app: :test_exdoc,
version: "0.1.0",
elixir: "~> 1.7-dev",
start_permanent: Mix.env() == :prod,
source_url: "https://yourprivate-repo.com/adam/projname",
deps: deps(),
docs: [
source_url_pattern: "https://yourprivate-repo.com/adam/projname/blob/master/%{path}#L%{line}"
]
]
end
我正在尝试为我的项目生成文档。
我已将 {:ex_doc, "~> 0.16", only: :dev, runtime: false}
添加到我的 deps
,将 source_url
设置到我的存储库并 运行 mix docs
.
我正在使用 Github Enterprise,所以我的设置是这样的:source_url: "https://my.private.repo/adam/projname"
但是,在生成的文档中,所有指向源代码的 link 都直接指向 https://my.private.repo/adam/projname
而不是相关文件和行号。
我想做的一个例子:
https://hexdocs.pm/ex_doc/Mix.Tasks.Docs.html
本文件右上角的linklink到https://github.com/elixir-lang/ex_doc/blob/v0.18.3/lib/mix/tasks/docs.ex#L1
在我生成的文档中,每个 link 只是 link 到 https://my.private.repo/adam/projname
。
我试过将 source_ref
设置为 master
,但这没有任何区别。
如何让 ExDoc
生成正确的特定 link 源代码?
这是我的 mix.exs
文件的简化版本:
defmodule ProjectName.MixProject do
use Mix.Project
def project do
[
app: :project_name,
version: "0.1.0",
elixir: "~> 1.6",
deps: deps(),
# Docs
name: "ProjectName",
source_url: "https://my.private.repo/adam/projname"
]
end
end
ex_doc
只会在您使用以下域之一作为 source_url
时自动确定在哪里可以找到文件。 ex_docs source
github.com
bitbucket.com
gitlab.com
在域不同的情况下,您必须在 mix.exs
文件的 docs
部分提供 [=16=]
def project do
[
app: :test_exdoc,
version: "0.1.0",
elixir: "~> 1.7-dev",
start_permanent: Mix.env() == :prod,
source_url: "https://yourprivate-repo.com/adam/projname",
deps: deps(),
docs: [
source_url_pattern: "https://yourprivate-repo.com/adam/projname/blob/master/%{path}#L%{line}"
]
]
end