Create a versioned directory with some commits and a NEWS.md in a temporary directory
#
ticket
<- fake_repo() repo
The main function of {gitdown} is to build this gitbook with all commit messages ordered according to a pattern. Each commit message associated with an issue will be recorded in the section of this issue. A commit message can thus appears multiple times if it is associated with multiple issues.
If you have your own referencing system for tickets in an external software, you can also create the gitbook associated like using ticket
as in the example below.
git_down(repo, pattern = c("Tickets" = "ticket[[:digit:]]+", "Issues" = "#[[:digit:]]+"))
As a side effect of {gitdown}, you can get some intermediate information used to build the book with some exported functions.
get_commits_tags(repo, ref = "main")
#> 4 commits found.
#> # A tibble: 4 × 9
#> sha summary message author email when order tag.name
#> <chr> <chr> <chr> <chr> <chr> <dttm> <int> <chr>
#> 1 38ecd05… Add NEWS "Add NEWS\n… Alice alic… 2022-03-05 20:32:44 4 <NA>
#> 2 c1c1588… Third c… "Third comm… Alice alic… 2022-03-05 20:32:44 3 v0.1
#> 3 13a5e01… example… "example: m… Alice alic… 2022-03-05 20:32:44 2 v0.1
#> 4 7e0a474… First c… "First comm… Alice alic… 2022-03-05 20:32:44 1 v0.1
#> # … with 1 more variable: tag.message <chr>
#123
get_commits_pattern(repo, pattern = "#[[:digit:]]+", ref = "main")
#> 4 commits found.
#> # A tibble: 7 × 12
#> sha summary message author email when order tag.name
#> <chr> <chr> <chr> <chr> <chr> <dttm> <int> <chr>
#> 1 38ecd05… Add NEWS "Add NEWS\n… Alice alic… 2022-03-05 20:32:44 4 <NA>
#> 2 38ecd05… Add NEWS "Add NEWS\n… Alice alic… 2022-03-05 20:32:44 4 <NA>
#> 3 38ecd05… Add NEWS "Add NEWS\n… Alice alic… 2022-03-05 20:32:44 4 <NA>
#> 4 c1c1588… Third c… "Third comm… Alice alic… 2022-03-05 20:32:44 3 v0.1
#> 5 c1c1588… Third c… "Third comm… Alice alic… 2022-03-05 20:32:44 3 v0.1
#> 6 13a5e01… example… "example: m… Alice alic… 2022-03-05 20:32:44 2 v0.1
#> 7 7e0a474… First c… "First comm… Alice alic… 2022-03-05 20:32:44 1 v0.1
#> # … with 4 more variables: tag.message <chr>, pattern.type <chr>,
#> # pattern.content <chr>, pattern.title <chr>
<- fake_repo(as.package = TRUE)
repo_pkg # List only files in R/ directory
create_vignette_last_modif(repo_pkg)
# List all files of the git repository
create_vignette_last_modif(repo_pkg, path = "")
With this example, the vignette will show this content:
File | Tracked in git | Date of creation | Last modification |
---|---|---|---|
NEWS.md | Yes | 2022-03-05 21:32:44 | 2022-03-05 21:32:44 |
example.txt | Yes | 2022-03-05 21:32:44 | 2022-03-05 21:32:44 |
R/my_mean.R | No | NA | 2022-03-05 21:32:44 |