Skip to content

Commit a974f84

Browse files
committed
docs(reference): Improve markdown formatting for readability
1 parent ac3ef49 commit a974f84

1 file changed

Lines changed: 14 additions & 3 deletions

File tree

docs/input/docs/reference/mdsource/configuration.source.md

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -229,28 +229,38 @@ Date and time in the format `yyyy-MM-ddTHH:mm:ss` (eg `commits-before:
229229
`commits-before` will be ignored.
230230

231231
#### paths
232+
232233
A sequence of regular expressions that represent paths in the repository. Commits that modify these paths will be excluded from version calculations. For example, to filter out commits that belong to `docs`:
234+
233235
```yaml
234236
ignore:
235237
paths:
236238
- ^docs\/
237239
```
240+
238241
##### *Monorepo*
242+
239243
This ignore config can be used to filter only those commits that belong to a specific project in a monorepo.
240244
As an example, consider a monorepo consisting of subdirectories for `ProjectA`, `ProjectB` and a shared `LibraryC`. For GitVersion to consider only commits that are part of `projectA` and shared library `LibraryC`, a regex that matches all paths except those starting with `ProjectA` or `LibraryC` can be used. Either one of the following configs would filter out `ProjectB`.
245+
241246
* Specific match on `/ProjectB/*`:
247+
242248
```yaml
243249
ignore:
244250
paths:
245251
- `^\/ProductB\/.*`
246252
```
253+
247254
* Negative lookahead on anything other than `/ProjectA/*` and `/LibraryC/*`:
255+
248256
```yaml
249257
ignore:
250258
paths:
251259
- `^(?!\/ProductA\/|\/LibraryC\/).*`
252260
```
261+
253262
A commit having changes only in `/ProjectB/*` path would be ignored. A commit having changes in the following paths wouldn't be ignored:
263+
254264
* `/ProductA/*`
255265
* `/LibraryC/*`
256266
* `/ProductA/*` and `/LibraryC/*`
@@ -259,7 +269,8 @@ A commit having changes only in `/ProjectB/*` path would be ignored. A commit ha
259269
* `/ProductA/*` and `/ProductB/*` and `/LibraryC/*`
260270

261271
:::
262-
Note: The `ignore.paths` configuration is case-sensitive. This can lead to unexpected behavior on case-insensitive file systems, such as Windows. To ensure consistent matching regardless of case, you can prefix your regular expressions with the case-insensitive flag `(?i)`. For example, `(?i)^docs\/` will match both `docs/` and `Docs/`.
272+
Note: The `ignore.paths` configuration is case-sensitive.
273+
This can lead to unexpected behavior on case-insensitive file systems, such as Windows. To ensure consistent matching regardless of case, you can prefix your regular expressions with the case-insensitive flag `(?i)`. For example, `(?i)^docs\/` will match both `docs/` and `Docs/`.
263274
:::
264275

265276
::: {.alert .alert-warning}
@@ -284,7 +295,7 @@ The regular expression should contain the following capture groups:
284295
* `TargetBranch` - Identifies the target branch of the merge
285296
* `PullRequestNumber` - Captures the pull-request number
286297

287-
Custom merge message formats are evaluated _before_ any built in formats.
298+
Custom merge message formats are evaluated *before* any built in formats.
288299
Support for [Conventional Commits][conventional-commits] can be
289300
[configured][conventional-commits-config].
290301

@@ -551,7 +562,7 @@ branches:
551562

552563
Strategy which will look for tagged merge commits directly off the current
553564
branch. For example `develop` → `release/1.0.0` → merge into `main` and tag
554-
`1.0.0`. The tag is _not_ on develop, but develop should be version `1.0.0` now.
565+
`1.0.0`. The tag is *not* on develop, but develop should be version `1.0.0` now.
555566

556567
### track-merge-message
557568

0 commit comments

Comments
 (0)