This repository contains a collection of features that can be used to enhance the development experience in a Visual Studio Code Dev Container. The features are organized in separate folders and can be used individually.
To install stubs in current repo
npx tomgrv/devcontainer-features -- --stubs
To install devcontainer feature(s) locally:
npx tomgrv/devcontainer-features -- gitutils
To setup a full dev environnement locally (repo + features)
npx tomgrv/devcontainer-features -- --all
The GitVersion feature installs GitVersion in the dev container. GitVersion is a tool that calculates a version number based on the Git history. The version number is written to a file that can be used in the build process.
Originally, GitVersion was designed to be used in a CI/CD pipeline. However, it can also be used in a dev container to calculate the version number of the application.
More information about GitVersion can be found on the GitVersion GitHub page.
Configure developpement environnement in one step in conjunction with following packages:
- @commitlint/cli
- @commitlint/config-conventional
- @commitlint/core
- @commitlint/cz-commitlint
- commitizen
- conventional-changelog-cli
- devmoji
- git-precommit-checks
- lint-staged
- prettier
- sort-package-json
The GitUtils feature installs a collection of Git utilities in the dev container. The utilities are useful for automating Git workflows.
The following utilities are included: ./src/gitutils/alias.json
git fixup
- Amend the specified commit with current changes and rebasegit fixauthor
- Amend commits with specified author and rebase
Additionnaly, the feature installs the git-flow extension and sets up the Git configuration to use it.
Configure developpement environnement in one step with:
Shortcuts are also added to the git
command to make it easier to use the git-flow
commands:
git beta
is a shortcut forgit flow release start
git hfix
is a shortcut forgit flow hotfix start
git prod
is a shortcut forgit flow release finish
andgit flow hotfix finish
Those shortcuts work in cunjunction with the gitversion
utility to automatically update the version number of the application.
The Act feature installs the [nektos/act] tool in the dev container. Act is a tool that allows you to run GitHub Actions locally.
Originally, Act was designed to be used in a CI/CD pipeline. However, it can also be used in a dev container to test GitHub Actions locally.
More information about Act can be found on the Act GitHub page.
The PECL feature installs the PHP Extension Community Library (PECL) in the dev container. PECL is a repository for PHP extensions.
More information about PECL can be found on the PECL website.
If you have a feature that you would like to add to this repository, please open an issue or submit a pull request.
This repository is licensed under the MIT License.