B00_github.Pages
Publish to GitHub pages.
val update : ?follow_symlinks:bool -> src:B00_std.Fpath.t option -> B00_std.Fpath.t -> update
update ~follow_symlinks ~src dst
is an update that given a relative path dst
in the work tree that may not exist:
src
is None
, deletes dst
in the work tree.src
is Some src
replaces dst
in the work tree by the contents of the file or file hierarchy src
. If follow_symlinks
is true
(default) symbolic links are followed in src
.Use .
for dst
to denote the root of the work tree; for example update ~src:(Some dir) (Fpath.v ".")
replaces the whole website by the file hierarchy rooted at dir
.
val nojekyll : update
nojekyll is update ~src:(Some Os.File.null) (Fpath.v ".nojekyll")
. Add this to the updtaes to prevent the Jekyll processing that is automatically performed on GitHub pages.
val default_branch : B00_vcs.Git.branch
default_branch
is "gh-pages"
, GitHub's default publication branch for GitHub pages.
val commit_updates : ?log:B00_std.Log.level -> ?branch:B00_vcs.Git.branch -> B00_vcs.t -> amend:bool -> force:bool -> remote:B00_vcs.Git.remote ->
msg:string -> update list -> (bool, string) result
commit_updates vcs ~log ~remote ~branch ~msg us
updates branch
(defaults to gh-pages
) on remote
according to updates us
with commit message msg
. Ok false
is returned if there was nothing to update.
amend
is true
, the last commit is amended (if any exists) and the author reset rather than a new commit addedforce
is true
, the various git operations are forced.log
indicates a logging level used to monitor progress (defaults to Log
.app).More precisely this:
remote/branch
if it exists.Os
.Dir.default_tmp and a branch called _b0-update-gh-pages
reset to remote/branch
.msg
according to us
which are applied in order, see update
._b0-update-gh-pages
on remote/branch
_b0-update-gh-pages
Warning. If you have paths that start with _
GitHub pages won't publish them. You can disable this by adding a .nojekyll
file at the root the gh-page branch, see nojekyll
.