• Stars
    star
    319
  • Rank 131,491 (Top 3 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created over 4 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

💬Conventional Commits for VSCode.

VSCode Conventional Commits

Marketplace Version Installs Downloads Rating Financial Contributors on Open Collective

Conventional Commits for VSCode.

Features

This extension helps you to fill in commit message according to Conventional Commits.

Usage

Demo

You can access VSCode Conventional Commits in two ways:

  1. Command + Shift + P or Ctrl + Shift + P, enter Conventional Commits, and press Enter.
  2. Click the icon on the Source Control menu. See the image below.

Icon on the Source Control menu

Extension Configuration

name description default
conventionalCommits.autoCommit Control whether the extension should commit files after: forming the message or closing the editor tab.
When #git.enableSmartCommit# enabled and #git.smartCommitChanges# was set to all, It allows to commit all changes when there are no staged changes.
And set #git.postCommitCommand# to sync to run git.sync after commit.
true
conventionalCommits.emojiFormat Specify which format will be shown in the gitmoji. code
conventionalCommits.gitmoji Control whether the extension should prompt for a gitmoji. true
conventionalCommits.lineBreak Specify which word will be treated as line breaks in the body.
Blank means no line breaks.
""
conventionalCommits.promptBody Control whether the extension should prompt for the body section. true
conventionalCommits.promptFooter Control whether the extension should prompt for the footer section. true
conventionalCommits.promptCI Control whether the extension should prompt for skipping CI run. false
conventionalCommits.promptScopes Control whether the extension should prompt for the scope section. true
conventionalCommits.scopes Specify available selections in the scope section. []
conventionalCommits.showEditor Control whether the extension should show the commit message as a text document in a separate tab. false
conventionalCommits.showNewVersionNotes Control whether the extension should show the new version notes. true
conventionalCommits.silentAutoCommit Control that auto commit should be silent, without focusing source control panel. false
conventionalCommits.editor.keepAfterSave Control whether the extension should keep the editor tab open after saving the commit message. false

Commit Workflow

The recommended workflow automatically add, commit and push files by default.

If you want the extension to only fill in the message, disable autoCommit configuration.

The Recommended Workflow

  1. Active the extension.
  2. Type messages.

The extension will automatically add the changed files, perform the commit and push the commit to remote.

How To Configure autoCommit

  1. Enable Settings > conventionalCommits.autoCommit configuration of the extension. The extension enables Settings > conventionalCommits.autoCommit by default.
  2. Enable Settings > git.enableSmartCommit and set Settings > git.smartCommitChanges to all to commit all changes when there are no staged changes.
  3. Set Settings > git.postCommitCommand to sync to run git.sync after commit.

Supported Commitlint Rules

  • body-full-stop
  • body-leading-blank
  • body-max-length
  • body-max-line-length
  • body-min-length
  • footer-leading-blank
  • footer-max-length
  • footer-max-line-length
  • footer-min-length
  • header-case
  • header-full-stop
  • header-max-length
  • header-min-length
  • references-empty
  • scope-enum
  • scope-case
  • scope-empty
  • scope-max-length
  • scope-min-length
  • subject-case
  • subject-empty
  • subject-full-stop
  • subject-max-length
  • subject-min-length
  • type-enum
  • type-case
  • type-empty
  • type-max-length
  • type-min-length
  • signed-off-by

FAQ

Q: How do I add a line break in messages?

A: Set lineBreak configuration to \n. When you're typing, enter \n as a line break.

image

Or \\n in JSON format.

image

Q: How do I resolve repo not found error?

A: See issue discussion #15.

Q: How do I use commitlint in showEditor mode?

A: The extension - vscode-commitlint will helpful!

Troubleshooting

  1. Switch to the VSCode OUTPUT tab, select Conventional Commits.
  2. Copy all the output. Before sharing it, make sure you have removed all private information.

Debug instruction

Contribution

  1. The vscode task needs to install the extension - vscode-tsl-problem-matcher.
  2. The effect of code changes needs to reactivate the extension. Just restart the task.

Team Members

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

Related Projects

More Repositories

1

react-native-auto-height-image

🖼️React native auto height image
JavaScript
339
star
2

gacp

💬Git add, commit, push with Conventional Commits and Gitmoji.
TypeScript
184
star
3

impression

👀Element view notifier
JavaScript
78
star
4

png

🖼A full-featured PNG decoder and encoder.
TypeScript
74
star
5

alfred-open-in-vscode

Alfred workflow to open in VSCode
JavaScript
36
star
6

here

📂Local static server
JavaScript
28
star
7

examples

📚Examples
JavaScript
27
star
8

node-reveal

🎁A reveal.js cli
JavaScript
26
star
9

granturismo

🎉Generator tool
JavaScript
19
star
10

react-text-more-less

📃React component to show more text or show less
JavaScript
17
star
11

gt-react-scaffold

🥚A boilerplate for client apps of webpack, react, redux, router...
JavaScript
15
star
12

WXML

See https://github.com/oft/wxml.
TypeScript
12
star
13

appear-event

👀Element appear event.
TypeScript
7
star
14

qrcode-chrome

🔗A chrome extension to make URLs as QR codes
JavaScript
7
star
15

use-appear

👀React useAppear hook.
TypeScript
6
star
16

JavaScript

🔬JavaScript parser, executor and serializer
JavaScript
6
star
17

design

🎨Web design
JavaScript
3
star
18

create-n

🥚Create Npm Package
JavaScript
3
star
19

gt-node-server

🥚Node server gt scaffold
JavaScript
3
star
20

react-pianist

🎹react-pianist provides react components to speed up web development
JavaScript
3
star
21

is-animated-image

🖼️Check if an image is animated.
JavaScript
3
star
22

vivaxy.github.io

📔My website
JavaScript
3
star
23

games

🎮 Games
JavaScript
2
star
24

git

💭Git operations.
TypeScript
2
star
25

babel-folder

📦Babel from source to build
JavaScript
2
star
26

alfred-open-in-webstorm

Alfred workflow to open in WebStorm
JavaScript
1
star
27

change-git-user

💭Change git user infomation
Shell
1
star
28

NiB

🔬Run commonjs modules in browser environment.
JavaScript
1
star
29

gcmt

💬Commit changes to git easier
Shell
1
star
30

browserify-cortex

📦Bundle cortex project by browserify
JavaScript
1
star
31

eslint-config-vivaxy

🚦My eslint config
JavaScript
1
star
32

hook-deploy

🖇️ Git hook to deploy
JavaScript
1
star
33

gt-npm-package

🥚Scaffold for npm packages
JavaScript
1
star
34

data-structure-visualization

🎬Data Structure Visualization with animation.
TypeScript
1
star
35

alfred-ticktick

Alfred workflow for TickTick or Dida365
JavaScript
1
star
36

log-util

📒Node log utility
TypeScript
1
star
37

npm-registry-proxy

📦Proxy npm registry, for enforcing cli as yarn or npm.
JavaScript
1
star
38

execa-process-log

📢Warp execa into promise and output logs in process. Use `stdio: 'inherit'` instead.
JavaScript
1
star
39

dotakey

⌨️ DotA hotkey on windows
AutoHotkey
1
star