GitL - Complete Git Integration for VS Code

GitL brings complete Git integration to VS Code, reproducing full Git functionality with an well-inspired interface and advanced conflict resolution capabilities.
Features
- 🌳 Complete Branch Management - Create, switch, merge, and rebase branches with visual branch tree
- 🔄 Advanced Git Operations - Commit, push, pull, stash, and interactive rebase support
- 🔍 Visual Diff & History - File history, blame information, and visual diff viewer
- ⚔️ Smart Conflict Resolution - Three-way merge tool with intuitive conflict resolution
- 🌐 Remote Repository Integration - Clone, manage remotes, and share projects
- 📦 Local VCS Setup - Initialize repositories and manage unversioned files
Installation
- Install the extension from the VS Code Marketplace
- Once installed, access GitL features through:
- Source Control view
- Command Palette (
Ctrl+Shift+P
/ Cmd+Shift+P
)
- Context menus in Explorer
- GitL views in the Source Control sidebar
Core Views
GitL adds several dedicated views to the Source Control sidebar:
- Branches - Visual branch tree with current branch indicator
- Changes - Staged/unstaged changes and unversioned files
- History - Commit history with visual graph
- Stashes - Saved stashes with apply/pop actions
- Remotes - Remote repository management
Commands
Command |
Description |
Activation |
GitL: Show Branches |
Display branch tree |
Command Palette |
GitL: Commit |
Create new commit |
Command Palette, SCM view |
GitL: Push |
Push commits to remote |
Command Palette, SCM view |
GitL: Pull |
Pull changes from remote |
Command Palette, SCM view |
GitL: Show History |
View commit history |
Command Palette, SCM view |
GitL: Show Changes |
View working tree changes |
Command Palette, SCM view |
GitL: Resolve Conflicts |
Open merge conflict resolver |
Automatically on merge conflicts |
GitL: Interactive Rebase |
Start interactive rebase |
Command Palette |
GitL: Show Blame |
View blame information |
Command Palette, Editor context menu |
GitL: Stash Changes |
Create new stash |
Command Palette, SCM view |
GitL: Clone Repository |
Clone remote repository |
Command Palette |
Quick Start
- Install the extension from the VS Code Marketplace
- Open a folder in VS Code
- Access GitL features through:
- Command Palette (
Ctrl+Shift+P
/ Cmd+Shift+P
)
- Source Control sidebar
- Context menus in Explorer
- Status bar items
Conflict Resolution
GitL implements a sophisticated three-way merge algorithm for resolving conflicts:
Anchor Detection:
- Computes Longest Common Subsequence (LCS) between base and both changed versions
- Identifies unchanged lines as anchors for alignment
- Creates virtual anchors at file boundaries
Chunk Analysis:
- Analyzes changes between anchors in both versions
- Identifies pure additions, deletions, and modifications
- Handles complex scenarios with overlapping changes
Resolution UI:
- Shows side-by-side three-way diff view
- Provides one-click resolution actions
- Supports manual editing with real-time preview
- Maintains undo/redo history for resolutions
Configuration
Setting |
Type |
Default |
Description |
gitl.autoFetch |
boolean |
true |
Automatically fetch from remotes |
gitl.licensing.serverUrl |
string |
"" |
License verification endpoint |
gitl.licensing.pricingUrl |
string |
"https://devlon.io/gitl" |
Pricing page URL |
gitl.licensing.accountUrl |
string |
"https://devlon.io/gitl" |
Account management URL |
The extension activates on:
onStartupFinished
workspaceContains:**/.git
This ensures GitL is ready when needed but doesn't impact VS Code startup time in non-Git workspaces.
Licensing & Trial
GitL uses a commercial licensing model:
- Free 7-day trial for all features
- License verification through configured HTTPS endpoint
- Status shown in status bar with expiration warnings
- License management through
GitL: Manage License
command
- Visit pricing page through
gitl.licensing.pricingUrl
setting
Privacy & Security
- No telemetry or usage tracking implementation
- All operations performed locally
- Remote connections only for explicit Git operations
- License verification requires HTTPS connection to configured server
- WebViews use secure Content Security Policy
Requirements
- VS Code ^1.74.0
- Git installed and configured locally
- Network connection for remote operations and license verification
Support & Contributing
Legal & License
Source code is available under the MIT License. Commercial use of the packaged marketplace extension is governed by the EULA and Terms of Service.
⚙️ Configuration
Repository Setup Settings
{
"gitl.autoAddNewFiles": false, // Auto-prompt to add new files
"gitl.setupWizard.showOnStartup": true, // Show setup wizard for non-Git folders
"gitl.passwordPolicy": "session", // Password policy: remember|session|ask
"gitl.defaultBranchName": "main" // Default branch for new repositories
}
Advanced Features
{
"gitl.autoFetch": true, // Automatically fetch from remotes
"gitl.showInlineBlame": false, // Show Git blame inline
"gitl.historyLimit": 1000, // Max commits in history view
"gitl.rebase.autoSquash": true, // Auto-reorder fixup commits
"gitl.merge.tool": "vscode" // Preferred merge tool
}
Getting Help
Plans
- Free trial (7 days)
- Basic: $2/month
- Annual: $20/year
Pricing and Licensing
- Free Trial: 7 days
- Basic: $2/month
- Annual: $20/year
GitL uses a simple license system:
- Start a free 7‑day trial directly inside VS Code via “GitL: Manage License”.
- Activate with your email and license key after purchase.
- Licenses are per‑user. You can use the extension on multiple devices where you are the primary user.
Commands:
- GitL: Manage License — start trial, enter license, manage subscription.
- GitL: License Status — view your current status.
Legal:
- End‑User License Agreement (EULA): EULA
- Terms of Service: TERMS
- Privacy Policy: PRIVACY
Open‑source components are under their respective licenses. GitL source is under the MIT License; commercial use of the packaged marketplace extension is governed by the EULA and Terms.
Acknowledgments
- GitL - For inspiration from excellent Git workflows
- VS Code Team - For the powerful extension API
- simple-git - For the robust Git command interface
- Contributors - Everyone who has helped improve this extension
Made with ❤️ for developers who love powerful Git workflows