From 51495252d0c1b686dd9f03e09a1b471a4d459083 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Wed, 17 Sep 2025 01:18:08 +0000
Subject: [PATCH 1/4] Initial plan
From 2596bc4bc97eca85d32fb0a5bd5288884a086343 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Wed, 17 Sep 2025 01:25:26 +0000
Subject: [PATCH 2/4] feat: Add unified Jekyll documentation site with
commit-check and commit-check-action docs
Co-authored-by: shenxianpeng <3353385+shenxianpeng@users.noreply.github.com>
---
.github/workflows/deploy.yml | 54 +++++++
.gitignore | 22 +++
Gemfile | 14 ++
README.md | 14 +-
_config.yml | 27 ++++
_includes/navigation.html | 6 +
_layouts/default.html | 62 ++++++++
commit-check-action/index.md | 264 +++++++++++++++++++++++++++++++++++
commit-check/cli-args.md | 116 +++++++++++++++
commit-check/index.md | 225 +++++++++++++++++++++++++++++
index.md | 71 ++++++++++
11 files changed, 873 insertions(+), 2 deletions(-)
create mode 100644 .github/workflows/deploy.yml
create mode 100644 .gitignore
create mode 100644 Gemfile
create mode 100644 _config.yml
create mode 100644 _includes/navigation.html
create mode 100644 _layouts/default.html
create mode 100644 commit-check-action/index.md
create mode 100644 commit-check/cli-args.md
create mode 100644 commit-check/index.md
create mode 100644 index.md
diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
new file mode 100644
index 0000000..e739e50
--- /dev/null
+++ b/.github/workflows/deploy.yml
@@ -0,0 +1,54 @@
+name: Deploy Jekyll Site to GitHub Pages
+
+on:
+ push:
+ branches: [ main ]
+ pull_request:
+ branches: [ main ]
+
+permissions:
+ contents: read
+ pages: write
+ id-token: write
+
+concurrency:
+ group: "pages"
+ cancel-in-progress: true
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v5
+
+ - name: Setup Ruby
+ uses: ruby/setup-ruby@v1
+ with:
+ ruby-version: '3.1'
+ bundler-cache: true
+ cache-version: 0
+
+ - name: Setup Pages
+ id: pages
+ uses: actions/configure-pages@v4
+
+ - name: Build with Jekyll
+ run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}"
+ env:
+ JEKYLL_ENV: production
+
+ - name: Upload artifact
+ uses: actions/upload-pages-artifact@v3
+
+ deploy:
+ if: github.ref == 'refs/heads/main'
+ environment:
+ name: github-pages
+ url: ${{ steps.deployment.outputs.page_url }}
+ runs-on: ubuntu-latest
+ needs: build
+ steps:
+ - name: Deploy to GitHub Pages
+ id: deployment
+ uses: actions/deploy-pages@v4
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..02754c8
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,22 @@
+# Jekyll
+_site/
+.sass-cache/
+.jekyll-cache/
+.jekyll-metadata
+
+# Ruby
+vendor/
+.bundle/
+Gemfile.lock
+
+# macOS
+.DS_Store
+
+# Windows
+Thumbs.db
+
+# Logs
+*.log
+
+# Temporary files
+*~
\ No newline at end of file
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 0000000..3a4c746
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,14 @@
+source "https://rubygems.org"
+
+gem "github-pages", group: :jekyll_plugins
+gem "jekyll-feed", "~> 0.12"
+
+# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
+# and associated library.
+platforms :mingw, :x64_mingw, :mswin, :jruby do
+ gem "tzinfo", ">= 1", "< 3"
+ gem "tzinfo-data"
+end
+
+# Performance-booster for watching directories on Windows
+gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]
\ No newline at end of file
diff --git a/README.md b/README.md
index 40f4e69..f78fcf2 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,12 @@
-# commit-check.github.io
-Commit Check main website, blog, and more
+# Commit Check Documentation Site
+
+This repository contains the unified documentation site for the Commit Check organization, hosted at [commit-check.github.io](https://commit-check.github.io).
+
+## Structure
+
+- **commit-check/**: Documentation for the main commit-check tool
+- **commit-check-action/**: Documentation for the GitHub Action
+
+## Development
+
+This site is built with Jekyll and automatically deployed via GitHub Pages.
diff --git a/_config.yml b/_config.yml
new file mode 100644
index 0000000..8366d7d
--- /dev/null
+++ b/_config.yml
@@ -0,0 +1,27 @@
+# Site settings
+title: Commit Check Documentation
+description: A powerful tool for enforcing commit metadata standards
+url: "https://commit-check.github.io"
+baseurl: ""
+
+# Build settings
+markdown: kramdown
+highlighter: rouge
+
+# Plugins
+plugins:
+ - jekyll-feed
+ - jekyll-sitemap
+
+# Social links
+github_username: commit-check
+
+# Exclude files
+exclude:
+ - node_modules/
+ - .sass-cache/
+ - .jekyll-cache/
+ - gemfile
+ - gemfile.lock
+ - vendor/
+ - README.md
\ No newline at end of file
diff --git a/_includes/navigation.html b/_includes/navigation.html
new file mode 100644
index 0000000..a0e4bdb
--- /dev/null
+++ b/_includes/navigation.html
@@ -0,0 +1,6 @@
+
\ No newline at end of file
diff --git a/_layouts/default.html b/_layouts/default.html
new file mode 100644
index 0000000..ce3e016
--- /dev/null
+++ b/_layouts/default.html
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+ {% if page.title %}{{ page.title | escape }}{% else %}{{ site.title | escape }}{% endif %}
+
+
+
+
+
+
+
+
+
+ {% include navigation.html %}
+
+
+
+ {{ content }}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/commit-check-action/index.md b/commit-check-action/index.md
new file mode 100644
index 0000000..04791fc
--- /dev/null
+++ b/commit-check-action/index.md
@@ -0,0 +1,264 @@
+---
+layout: default
+title: Commit Check GitHub Action
+permalink: /commit-check-action/
+---
+
+# Commit Check GitHub Action
+
+[](https://github.com/commit-check/commit-check-action/actions/workflows/commit-check.yml)
+
+[](https://github.com/commit-check/commit-check-action/network/dependents)
+[](https://github.com/marketplace/actions/commit-check-action)
+[](https://github.com/commit-check/commit-check-action/blob/a2873ca0482dd505c93fb51861c953e82fd0a186/action.yml#L59-L69)
+
+A GitHub Action for checking commit message formatting, branch naming, committer name, email, commit signoff, and more.
+
+## Table of Contents
+
+* [Usage](#usage)
+* [Optional Inputs](#optional-inputs)
+* [GitHub Action Job Summary](#github-action-job-summary)
+* [GitHub Pull Request Comments](#github-pull-request-comments)
+* [Badging Your Repository](#badging-your-repository)
+* [Versioning](#versioning)
+
+## Usage
+
+Create a new GitHub Actions workflow in your project, e.g. at `.github/workflows/commit-check.yml`
+
+```yaml
+name: Commit Check
+
+on:
+ push:
+ pull_request:
+ branches: 'main'
+
+jobs:
+ commit-check:
+ runs-on: ubuntu-latest
+ permissions: # use permissions because use of pr-comments
+ contents: read
+ pull-requests: write
+ steps:
+ - uses: actions/checkout@v5
+ with:
+ ref: ${{ github.event.pull_request.head.sha }} # checkout PR HEAD commit
+ fetch-depth: 0 # required for merge-base check
+ - uses: commit-check/commit-check-action@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # use GITHUB_TOKEN because use of pr-comments
+ with:
+ message: true
+ branch: true
+ author-name: true
+ author-email: true
+ commit-signoff: true
+ merge-base: false
+ imperative: false
+ job-summary: true
+ pr-comments: ${{ github.event_name == 'pull_request' }}
+```
+
+## Used By
+
+
+
+ Apache
+
+ discovery-unicamp
+
+ Texas Instruments
+
+ OpenCADC
+
+ Extrawest
+
+ Chainlift
+
+ Mila
+
+ RLinf
+ and many more.
+
+
+## Optional Inputs
+
+### `message`
+
+- **Description**: check commit message formatting convention.
+ - By default, the rule follows [Conventional Commits](https://www.conventionalcommits.org/).
+- **Default**: `true`
+
+### `branch`
+
+- **Description**: check git branch naming convention.
+ - By default, the rule follows [Conventional Branch](https://conventional-branch.github.io/).
+- **Default**: `true`
+
+### `author-name`
+
+- **Description**: check committer author name.
+- **Default**: `true`
+
+### `author-email`
+
+- **Description**: check committer author email.
+- **Default**: `true`
+
+### `commit-signoff`
+
+- **Description**: check committer commit signature.
+- **Default**: `true`
+
+### `merge-base`
+
+- **Description**: check current branch is rebased onto the target branch.
+- **Default**: `false`
+
+> **Important:** `merge-base` is an experimental feature. By default, it's disabled.
+>
+> To use this feature, you need to fetch all history for all branches by setting `fetch-depth: 0` in `actions/checkout`.
+
+### `imperative`
+
+- **Description**: check commit message is imperative mood.
+- **Default**: `false`
+
+### `dry-run`
+
+- **Description**: run checks without failing. exit code is 0; otherwise is 1.
+- **Default**: `false`
+
+### `job-summary`
+
+- **Description**: display job summary to the workflow run.
+- **Default**: `true`
+
+### `pr-comments`
+
+- **Description**: post results to the pull request comments.
+- **Default**: `false`
+
+> **Important:** `pr-comments` is an experimental feature. By default, it's disabled. To use it, you need to set `GITHUB_TOKEN` in the GitHub Action.
+>
+> This feature currently doesn't work with forked repositories. For more details, refer to issue [#77](https://github.com/commit-check/commit-check-action/issues/77).
+
+**Note:** The default rule of above inputs follows [this configuration](https://github.com/commit-check/commit-check/blob/main/.commit-check.yml). If you want to customize, just add your `.commit-check.yml` config file under your repository root directory.
+
+## GitHub Action Job Summary
+
+By default, commit-check-action results are shown on the job summary page of the workflow.
+
+### Success Job Summary
+
+
+
+### Failure Job Summary
+
+
+
+## GitHub Pull Request Comments
+
+### Success Pull Request Comment
+
+
+
+### Failure Pull Request Comment
+
+
+
+## Badging Your Repository
+
+You can add a badge to your repository to show your contributors/users that you use commit-check!
+
+[](https://github.com/commit-check/commit-check-action/actions/workflows/commit-check.yml)
+
+**Markdown**
+
+```markdown
+[](https://github.com/commit-check/commit-check-action/actions/workflows/commit-check.yml)
+```
+
+**reStructuredText**
+
+```rst
+.. image:: https://github.com/commit-check/commit-check-action/actions/workflows/commit-check.yml/badge.svg
+ :target: https://github.com/commit-check/commit-check-action/actions/workflows/commit-check.yml
+ :alt: Commit Check
+```
+
+## Advanced Examples
+
+### Minimal Setup
+```yaml
+- uses: commit-check/commit-check-action@v1
+```
+
+### Full Configuration
+```yaml
+- uses: commit-check/commit-check-action@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ message: true
+ branch: true
+ author-name: true
+ author-email: true
+ commit-signoff: true
+ merge-base: true
+ imperative: true
+ job-summary: true
+ pr-comments: true
+ dry-run: false
+```
+
+### Custom Workflow Example
+```yaml
+name: Enhanced Commit Check
+
+on:
+ push:
+ branches: [ main, develop ]
+ pull_request:
+ branches: [ main ]
+
+jobs:
+ commit-check:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read
+ pull-requests: write
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v5
+ with:
+ fetch-depth: 0
+ ref: ${{ github.event.pull_request.head.sha }}
+
+ - name: Run commit check
+ uses: commit-check/commit-check-action@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ message: true
+ branch: true
+ author-name: true
+ author-email: true
+ commit-signoff: false
+ merge-base: ${{ github.event_name == 'pull_request' }}
+ imperative: true
+ job-summary: true
+ pr-comments: ${{ github.event_name == 'pull_request' }}
+```
+
+## Versioning
+
+Versioning follows [Semantic Versioning](https://semver.org/).
+
+## Have questions or feedback?
+
+To provide feedback (requesting a feature or reporting a bug), please post to [issues](https://github.com/commit-check/commit-check/issues).
+
+[← Back to Main Documentation](../)
\ No newline at end of file
diff --git a/commit-check/cli-args.md b/commit-check/cli-args.md
new file mode 100644
index 0000000..36249a8
--- /dev/null
+++ b/commit-check/cli-args.md
@@ -0,0 +1,116 @@
+---
+layout: default
+title: CLI Arguments - Commit Check Tool
+permalink: /commit-check/cli-args/
+---
+
+# CLI Arguments
+
+## commit-check --help
+
+```
+usage: commit-check [-h] [-m] [-b] [-a] [-e] [-s] [-i] [-n] [-d]
+ [--message-skip-on MESSAGE_SKIP_ON] [--commit-skip-on COMMIT_SKIP_ON]
+ [--config CONFIG]
+
+Checks commit message formatting, branch naming, commit author name, commit author email, commit signoff,
+and the commit is a merge base.
+
+options:
+ -h, --help show this help message and exit
+ -m, --message check commit message formatting
+ -b, --branch check branch name
+ -a, --author-name check commit author name
+ -e, --author-email check commit author email
+ -s, --commit-signoff check commit signoff
+ -i, --imperative check commit message is imperative mood
+ -n, --merge-base check current branch is rebased onto the target branch
+ -d, --dry-run dry run without fail
+ --message-skip-on MESSAGE_SKIP_ON
+ skip checking message on given text
+ --commit-skip-on COMMIT_SKIP_ON
+ skip checking commit on given text
+ --config CONFIG path to config file, default is .commit-check.yml
+```
+
+## Options Details
+
+### `-m, --message`
+Check commit message formatting against the configured rules. By default, this follows [Conventional Commits](https://www.conventionalcommits.org/) specification.
+
+### `-b, --branch`
+Check branch naming conventions. By default, this follows [Conventional Branch](https://conventional-branch.github.io/) naming patterns.
+
+### `-a, --author-name`
+Validate the commit author name against configured patterns.
+
+### `-e, --author-email`
+Validate the commit author email against configured patterns.
+
+### `-s, --commit-signoff`
+Check that commits include a valid "Signed-off-by" line.
+
+### `-i, --imperative`
+Check that commit messages use imperative mood (e.g., "Add feature" not "Added feature").
+
+### `-n, --merge-base`
+Check that the current branch is properly rebased onto the target branch. This is useful for ensuring clean merge history.
+
+### `-d, --dry-run`
+Run all checks without failing. The exit code will be 0 regardless of check results, but violations will still be reported.
+
+### `--message-skip-on TEXT`
+Skip message checking when the commit message contains the specified text.
+
+### `--commit-skip-on TEXT`
+Skip all commit checking when the commit SHA or message contains the specified text.
+
+### `--config PATH`
+Specify a custom path to the configuration file. Defaults to `.commit-check.yml` in the repository root.
+
+## Examples
+
+### Basic Usage
+```bash
+# Check all common validations
+commit-check --message --branch --author-name --author-email
+
+# Check specific validations
+commit-check -m -b # Short form
+
+# Include signoff and imperative checking
+commit-check --message --branch --commit-signoff --imperative
+```
+
+### Advanced Usage
+```bash
+# Dry run to see what would fail without actually failing
+commit-check --message --branch --dry-run
+
+# Skip certain commits
+commit-check --message --commit-skip-on "WIP"
+
+# Use custom config file
+commit-check --config /path/to/custom-config.yml --message --branch
+```
+
+### Integration Examples
+
+**Git Hook**
+```bash
+#!/bin/sh
+# .git/hooks/pre-push
+commit-check --message --branch --author-name --author-email --commit-signoff
+```
+
+**CI/CD**
+```bash
+# Run in CI pipeline
+commit-check --message --branch --author-name --author-email --merge-base
+```
+
+## Configuration
+
+All CLI options can be customized via the `.commit-check.yml` configuration file. See the [main documentation](../) for configuration details.
+
+[← Back to Commit Check Documentation](../)
\ No newline at end of file
diff --git a/commit-check/index.md b/commit-check/index.md
new file mode 100644
index 0000000..908e15b
--- /dev/null
+++ b/commit-check/index.md
@@ -0,0 +1,225 @@
+---
+layout: default
+title: Commit Check Tool
+permalink: /commit-check/
+---
+
+# Commit Check Tool
+
+[](https://pypi.org/project/commit-check/)
+[](https://github.com/commit-check/commit-check/actions/workflows/main.yml)
+[](https://sonarcloud.io/summary/new_code?id=commit-check_commit-check)
+[](https://codecov.io/gh/commit-check/commit-check)
+[](https://github.com/commit-check/commit-check)
+[](https://slsa.dev)
+
+## Overview
+
+**Commit Check** is a free, powerful tool that enforces commit metadata standards, including commit message, branch naming, committer name/email, commit signoff and more.
+
+Fully customizable with error messages and suggested commands, it ensures compliance across teams.
+
+As an alternative to GitHub Enterprise [Metadata restrictions](https://docs.github.com/en/enterprise-server@3.11/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets#metadata-restrictions) and Bitbucket's paid plugin [Yet Another Commit Checker](https://marketplace.atlassian.com/apps/1211854/yet-another-commit-checker?tab=overview&hosting=datacenter), Commit Check stands out by integrating DevOps principles and Infrastructure as Code (IaC).
+
+## Configuration
+
+### Use Default Configuration
+
+- **Commit Check** uses a [default configuration](https://github.com/commit-check/commit-check/blob/main/commit_check/__init__.py) if you do not provide a `.commit-check.yml` file.
+
+- The default configuration enforces commit message rules based on the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/#summary) specification and branch naming rules based on the [Conventional Branch](https://conventional-branch.github.io/#summary) convention.
+
+### Use Custom Configuration
+
+To customize the behavior, create a config file `.commit-check.yml` under your repository's root directory, e.g., [.commit-check.yml](https://github.com/commit-check/commit-check/blob/main/.commit-check.yml)
+
+## Usage
+
+### Running as GitHub Action
+
+Please see [commit-check/commit-check-action](../commit-check-action/)
+
+### Running as pre-commit hook
+
+> **Tip:** Make sure `pre-commit` is [installed](https://pre-commit.com/#install).
+
+```yaml
+- repo: https://github.com/commit-check/commit-check
+ rev: the tag or revision
+ hooks: # support hooks
+ - id: check-message # requires commit-msg hook
+ - id: check-branch
+ - id: check-author-name
+ - id: check-author-email
+ - id: check-commit-signoff
+ - id: check-merge-base # requires download all git history
+ - id: check-imperative
+```
+
+### Running as CLI
+
+**Install globally**
+
+```bash
+sudo pip3 install -U commit-check
+```
+
+**Install locally**
+
+```bash
+pip install -U commit-check
+```
+
+**Install from source code**
+
+```bash
+pip install git+https://github.com/commit-check/commit-check.git@main
+```
+
+Then, run `commit-check --help` or `cchk --help` (alias for `commit-check`) from the command line.
+
+For more information, see the [CLI arguments documentation](cli-args.html).
+
+### Running as Git Hooks
+
+To configure the hook, create a script file in the `.git/hooks/` directory.
+
+```bash
+#!/bin/sh
+commit-check --message --branch --author-name --author-email --commit-signoff --merge-base --imperative
+```
+
+Save the script file as `pre-push` and make it executable:
+
+```bash
+chmod +x .git/hooks/pre-push
+```
+
+Now, `git push` will trigger this hook automatically.
+
+## Examples
+
+### Check Commit Message Failed
+
+```text
+Commit rejected by Commit-Check.
+
+ (c).-.(c) (c).-.(c) (c).-.(c) (c).-.(c) (c).-.(c)
+ / ._. \ / ._. \ / ._. \ / ._. \ / ._. \
+ __\( C )/__ __\( H )/__ __\( E )/__ __\( C )/__ __\( K )/__
+(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)
+ || E || || R || || R || || O || || R ||
+ _.' '-' '._ _.' '-' '._ _.' '-' '._ _.' '-' '._ _.' '-' '._
+(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)
+ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´
+
+Type message check failed => my test commit message
+It doesn't match regex: ^(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test){1}(\([\w\-\.]+\))?(!)?: ([\w ])+([\s\S]*)
+
+The commit message should be structured as follows:
+
+[optional scope]:
+[optional body]
+[optional footer(s)]
+
+More details please refer to https://www.conventionalcommits.org
+Suggest: please check your commit message whether matches above regex
+```
+
+### Check Branch Naming Failed
+
+```text
+Commit rejected by Commit-Check.
+
+ (c).-.(c) (c).-.(c) (c).-.(c) (c).-.(c) (c).-.(c)
+ / ._. \ / ._. \ / ._. \ / ._. \ / ._. \
+ __\( C )/__ __\( H )/__ __\( E )/__ __\( C )/__ __\( K )/__
+(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)
+ || E || || R || || R || || O || || R ||
+ _.' '-' '._ _.' '-' '._ _.' '-' '._ _.' '-' '._ _.' '-' '._
+(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)
+ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´
+
+Commit rejected.
+
+Type branch check failed => patch-1
+It doesn't match regex: ^(bugfix|feature|release|hotfix|task|chore)\/.+|(master)|(main)|(HEAD)|(PR-.+)
+Branches must begin with these types: bugfix/ feature/ release/ hotfix/ task/ chore/
+Suggest: run command `git checkout -b type/branch_name`
+```
+
+### Check Commit Signature Failed
+
+```text
+Commit rejected by Commit-Check.
+
+ (c).-.(c) (c).-.(c) (c).-.(c) (c).-.(c) (c).-.(c)
+ / ._. \ / ._. \ / ._. \ / ._. \ / ._. \
+ __\( C )/__ __\( H )/__ __\( E )/__ __\( C )/__ __\( K )/__
+(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)
+ || E || || R || || R || || O || || R ||
+ _.' '-' '._ _.' '-' '._ _.' '-' '._ _.' '-' '._ _.' '-' '._
+(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)
+ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´
+
+Commit rejected.
+
+Type commit_signoff check failed => c92ce259ff041c91859c7fb61afdbb391e769d0f
+It doesn't match regex: Signed-off-by:.*[A-Za-z0-9]\s+<.+@.+>
+Signed-off-by not found in latest commit
+Suggest: run command `git commit -m "conventional commit message" --signoff`
+```
+
+### Check Imperative Mood Failed
+
+```text
+Commit rejected by Commit-Check.
+
+ (c).-.(c) (c).-.(c) (c).-.(c) (c).-.(c) (c).-.(c)
+ / ._. \ / ._. \ / ._. \ / ._. \ / ._. \
+ __\( C )/__ __\( H )/__ __\( E )/__ __\( C )/__ __\( K )/__
+(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)
+ || E || || R || || R || || O || || R ||
+ _.' '-' '._ _.' '-' '._ _.' '-' '._ _.' '-' '._ _.' '-' '._
+(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)(.-./`-´\.-.)
+ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´ `-´
+
+Commit rejected.
+
+Type imperative check failed => Added file
+It doesn't match regex: imperative mood pattern
+Commit message should use imperative mood (e.g., "Add feature" not "Added feature")
+Suggest: Use imperative mood in commit message like "Add", "Fix", "Update", "Remove"
+```
+
+## Badging your repository
+
+You can add a badge to your repository to show that you use commit-check!
+
+[](https://github.com/commit-check/commit-check)
+
+**Markdown**
+
+```markdown
+[](https://github.com/commit-check/commit-check)
+```
+
+**reStructuredText**
+
+```rst
+.. image:: https://img.shields.io/badge/commit--check-enabled-brightgreen?logo=Git&logoColor=white
+ :target: https://github.com/commit-check/commit-check
+ :alt: commit-check
+```
+
+## Versioning
+
+Versioning follows [Semantic Versioning](https://semver.org/).
+
+## Have question or feedback?
+
+Please post to [issues](https://github.com/commit-check/commit-check/issues) for feedback, feature requests, or bug reports.
+
+## License
+
+This project is released under the [MIT License](https://github.com/commit-check/commit-check/blob/main/LICENSE)
\ No newline at end of file
diff --git a/index.md b/index.md
new file mode 100644
index 0000000..cd3e814
--- /dev/null
+++ b/index.md
@@ -0,0 +1,71 @@
+---
+layout: default
+title: Commit Check Documentation
+---
+
+# Commit Check Documentation
+
+Welcome to the central documentation site for the Commit Check organization. Commit Check provides powerful tools for enforcing commit metadata standards across your development workflow.
+
+## Available Tools
+
+### [Commit Check Tool](commit-check/)
+The main commit-check tool is a powerful command-line utility and pre-commit hook that enforces commit message formatting, branch naming, committer information, and more.
+
+**Features:**
+- Commit message validation (Conventional Commits support)
+- Branch naming conventions
+- Author name and email validation
+- Commit signature verification
+- Multiple integration options (CLI, pre-commit, Git hooks)
+
+[View Documentation →](commit-check/)
+
+### [Commit Check GitHub Action](commit-check-action/)
+A GitHub Action that brings commit-check validation directly to your CI/CD pipeline, with support for pull request comments and job summaries.
+
+**Features:**
+- Seamless GitHub integration
+- Pull request validation
+- Workflow job summaries
+- Custom configuration support
+- Works with fork repositories
+
+[View Documentation →](commit-check-action/)
+
+## Quick Start
+
+### Using as GitHub Action
+```yaml
+- uses: commit-check/commit-check-action@v1
+ with:
+ message: true
+ branch: true
+ author-name: true
+ author-email: true
+```
+
+### Using as CLI Tool
+```bash
+pip install commit-check
+commit-check --message --branch --author-name --author-email
+```
+
+### Using as Pre-commit Hook
+```yaml
+- repo: https://github.com/commit-check/commit-check
+ rev: main
+ hooks:
+ - id: check-message
+ - id: check-branch
+```
+
+## Getting Help
+
+- **Issues & Feature Requests**: [GitHub Issues](https://github.com/commit-check/commit-check/issues)
+- **Discussions**: [GitHub Discussions](https://github.com/commit-check/commit-check/discussions)
+- **Source Code**: [GitHub Organization](https://github.com/commit-check)
+
+## License
+
+All Commit Check tools are released under the MIT License.
\ No newline at end of file
From 151287df03331bbfb55cf321032ccb64ac8df752 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Wed, 17 Sep 2025 01:28:55 +0000
Subject: [PATCH 3/4] docs: Add configuration guide, troubleshooting, quick
start, and enhanced styling
Co-authored-by: shenxianpeng <3353385+shenxianpeng@users.noreply.github.com>
---
_config.yml | 4 +
_includes/navigation.html | 1 +
_layouts/default.html | 2 +-
assets/css/main.scss | 116 ++++++++++++++
commit-check-action/index.md | 4 +
commit-check-action/troubleshooting.md | 103 ++++++++++++
commit-check/configuration.md | 210 +++++++++++++++++++++++++
commit-check/index.md | 4 +-
index.md | 4 +
quick-start.md | 130 +++++++++++++++
10 files changed, 576 insertions(+), 2 deletions(-)
create mode 100644 assets/css/main.scss
create mode 100644 commit-check-action/troubleshooting.md
create mode 100644 commit-check/configuration.md
create mode 100644 quick-start.md
diff --git a/_config.yml b/_config.yml
index 8366d7d..cf5bc7f 100644
--- a/_config.yml
+++ b/_config.yml
@@ -13,6 +13,10 @@ plugins:
- jekyll-feed
- jekyll-sitemap
+# Sass configuration
+sass:
+ style: compressed
+
# Social links
github_username: commit-check
diff --git a/_includes/navigation.html b/_includes/navigation.html
index a0e4bdb..93b846b 100644
--- a/_includes/navigation.html
+++ b/_includes/navigation.html
@@ -1,5 +1,6 @@