👍🎉 First off, thanks for taking the time to contribute! 🎉👍
When contributing to this project, please first discuss the changes you wish to make via an issue before making changes.
Please note the Code of Conduct document, please follow it in all your interactions with this project.
Unsure where to begin contributing? You can start by looking through the help-wanted
issues.
git clone https://github.com/eamodio/vscode-gitlens.git
Prerequisites
From a terminal, where you have cloned the repository, execute the following command to install the required dependencies:
npm install --no-save
From a terminal, where you have cloned the repository, execute the following command to re-build the project from scratch:
npm run rebuild
👉 NOTE! This will run a complete rebuild of the project.
Or to just run a quick build, use:
npm run build
During development you can use a watcher to make builds on changes quick and easy. From a terminal, where you have cloned the repository, execute the following command:
npm run watch
Or use the provided watch
task in VS Code, execute the following from the command palette (be sure there is no >
at the start):
task watch
This will first do an initial full build and then watch for file changes, compiling those changes incrementally, enabling a fast, iterative coding experience.
👉 Tip! You can press CMD+SHIFT+B (CTRL+SHIFT+B on Windows, Linux) to start the watch task.
👉 Tip! You don't need to stop and restart the development version of Code after each change. You can just execute Reload Window
from the command palette.
This project uses prettier for code formatting. You can run prettier across the code by calling npm run pretty
from a terminal.
To format the code as you make changes you can install the Prettier - Code formatter extension.
Add the following to your User Settings to run prettier:
"editor.formatOnSave": true,
This project uses tslint for code linting. You can run tslint across the code by calling npm run lint
from a terminal. Warnings from tslint show up in the Errors and Warnings
quick box and you can navigate to them from inside VS Code.
To lint the code as you make changes you can install the TypeScript TSLint Plugin extension.
To generate a production bundle (without packaging) run the following from a terminal:
npm run bundle
To generate a VSIX (installation package) run the following from a terminal:
npm run pack
- Open the
vscode-gitlens
folder - Ensure the required dependencies are installed
- Start the
watch
task - Choose the
Launch GitLens
launch configuration from the launch dropdown in the Debug viewlet and pressF5
.
Please follow all the instructions in the PR template.