To clone this repository with all submodules, run
$ git clone --recurse-submodules -j 2 git@github.com:georglauterbach/libbash.git
Cloning into 'libbash'...
remote: Enumerating objects: 76, done.
remote: Counting objects: 100% (76/76), done.
remote: Compressing objects: 100% (53/53), done.
remote: Total 76 (delta 23), reused 68 (delta 20), pack-reused 0
Receiving objects: 100% (76/76), 32.70 KiB | 418.00 KiB/s, done.
Resolving deltas: 100% (23/23), done.
Submodule 'tests/bats_assert' ...
...
Submodule path 'tests/bats_assert': checked out ...
Submodule path 'tests/bats_core': checked out ...
Submodule path 'tests/bats_support': checked out ...Take care of the following constraints.
Bash is a fragile language. Take special care of side effects or unwanted failures when writing code. Writing robust Bash is a rather complicated.. Writing idiomatic Bash is even harder..
The code in this repository is opinionated. Please adjust to the already present style.
GitHub actions are in-place to test your code upon opening a pull request and pushing to an upstream branch of a corresponding pull request. The Bash unit tests are executed, and your code is linted against various linters:
- An EditorConfig linter to check compliance with
.editorconfig - A Markdown linter
- A YAML linter
The sets of rules are found in .github/linters/. CI must pass before a PR
is merged into another branch.