Version Control

Version Control

Integrated, visual version control across your project.

Working with version control systems (VCS) such as Git, Mercurial, and others is an integral part of development. Our IDEs put a common abstraction atop each system, then puts a visual face on all your VCS activities.

See Also

Show diff with working tree

Tip

Show diff with working tree
Show the changes on a branch with the working tree.
Manage VCS Changelists in IntelliJ IDEA

Tip

Manage VCS Changelists in IntelliJ IDEA
Group and commit changes related to certain tasks so you have a cleaner commit history.
Creating a Project from GitHub

Tutorial

Creating a Project from GitHub
How you can create an IntelliJ IDEA project from your code in GitHub.
Enable Git Staging

Tip

Enable Git Staging
Git Staging is an alternative approach to IntelliJ IDEA Changelists.
Edit commit message

Tip

Edit commit message
Edit an existing commit message; use AI Assistant to Improve Commit Message.
Clone from GitHub

Tip

Clone from GitHub
Create a project in your JetBrains IDE by cloning it from GitHub
Commit Changes

Tip

Commit Changes
Commit your changes to VCS as you go.
Magic Wand

Tip

Magic Wand
Use the magic wand to resolve simple conflicts in your code.
VCS Popup

Tip

VCS Popup
Open VCS actions using keyboard shortcuts to save time.
Version control (Git) history

Part of tutorial

Version control (Git) history
Using Version control (Git) history to understand the project.
Interactive Rebase

Tip

Interactive Rebase
Clean up your commit history by using interactive rebase in IntelliJ IDEA.
Selectively Commit Changes

Tip

Selectively Commit Changes
Selectively commit a subset of changes in a file to VCS.
Annotate with Git Blame: Show Diff

Tip

Annotate with Git Blame: Show Diff
Look at the diff a change was part of from Annotate with Git Blame.
Annotate with Git Blame: Commit

Tip

Annotate with Git Blame: Commit
Look at the commit a change was part of from Annotate with Git Blame.
Introduction

Part of tutorial

Introduction
Importing a project into IntelliJ IDEA.
Project from version control

Part of tutorial

Project from version control
Cloning a project from version control.
Summary and Shortcuts

Part of tutorial

Summary and Shortcuts
Importing projects into IntelliJ IDEA Summary.
GitLab Merge Requests

Tutorial

GitLab Merge Requests
Working with GitLab Merge Requests.
Contributing to open source software; creating a pull request

Tutorial

Contributing to open source software; creating a pull request
Contribute code to someone else's GitHub project with a pull request.
Negotiating the review process

Part of tutorial

Negotiating the review process
Review and hopefully get your pull request merged.
Creating the pull request

Part of tutorial

Creating the pull request
How to create a pull request on GitHub.
Introduction

Part of tutorial

Introduction
Contributing to open source software.
Getting the project

Part of tutorial

Getting the project
Forking and cloning the project.
Summary and Shortcuts

Part of tutorial

Summary and Shortcuts
Contributing to open source software Summary.
Making changes to code

Part of tutorial

Making changes to code
Making and committing our changes.
Resolve Conflicts

Tip

Resolve Conflicts
Resolve merge conflicts automatically and manually inside your JetBrains IDE.
Move Work Aside with Stash

Tip

Move Work Aside with Stash
Use Git's stash to move uncommitted work to one side, temporarily.
Move Work Aside with Shelve

Tip

Move Work Aside with Shelve
Move uncommitted work to one side to come back to it later when you need to work on another branch.
Rebase Feature Branch

Tip

Rebase Feature Branch
Add the changes from your main branch into your feature branch so you're caught up with changes on the main branch.
Autocomplete File Names in Commits

Tip

Autocomplete File Names in Commits
How to reference filenames in a commit in WebStorm.
Compare With Branch

Tip

Compare With Branch
See the changes in another branch's commits and compare them with your branch.
See Unsynced Commits

Tip

See Unsynced Commits
Take a look at commits on other branches.
Browse Branch's Commits

Tip

Browse Branch's Commits
Review the changes in main before bringing them to your branch.
See VCS Changed Lines in Gutter

Tip

See VCS Changed Lines in Gutter
Quickly spot which parts of your file have changed since the last commit.
Only Commit Some Changes

Tip

Only Commit Some Changes
Select specific files or regions within files during the commit process for a lower level of commit granularity.
Fix Your Work with Amend Commit

Tip

Fix Your Work with Amend Commit
Put some missing work back into your last commit, before you push.
Marco Codes - Git

Tutorial

Marco Codes - Git
5 Git Tricks you need to know.
Use Local History to Avoid Disaster

Tip

Use Local History to Avoid Disaster
Use the IDE's built-in history facility to recover local changes when you haven't committed to VCS.
Undo your Last Commit

Tip

Undo your Last Commit
Undo your last Git commit
Edit Commit Message

Tip

Edit Commit Message
Edit the wording in your last commit message, after you committed.
Git interactive rebase

Tutorial

Git interactive rebase
How to clean up your Git commit history with Git interactive rebase.
Navigating a Long Class

Tip

Navigating a Long Class
There are various tips and tricks you can use to navigate a long class in IntelliJ IDEA.
Sharing your Project on GitHub

Tutorial

Sharing your Project on GitHub
How you can share a local project to GitHub.
Resolve Merge Conflicts in VCS

Tip

Resolve Merge Conflicts in VCS
Use VCS options in IntelliJ IDEA to resolve merge conflicts visually in the editor.
Cleanup Code Before Commit

Tip

Cleanup Code Before Commit
Remove all the redundant parenthesis and other unneeded code before commit.
Run Tests Before Commit

Tip

Run Tests Before Commit
Make sure your tests pass before reaching the CI/CD pipeline.
Run Inspections Before Commit

Tip

Run Inspections Before Commit
Catch all issues before your code before you commit it.
Search Text in Local History

Tip

Search Text in Local History
Find exactly what you are looking for, even if you removed it
Sign Git Commits with GPG Keys

Tip

Sign Git Commits with GPG Keys
Improve the security of your commits by using GPG keys.
Monitor Incoming and Outgoing Commits

Tip

Monitor Incoming and Outgoing Commits
Want to know if your branch has new commits? Here's how.
Lightweight Inspection Profile on Commit

Tip

Lightweight Inspection Profile on Commit
Fully customise the checks you must perform before you commit your changes to version control.
Put New Project Under Version Control

Tip

Put New Project Under Version Control
The fastest way to register a new project directory under local version control.
Version Control in Rider

Part of tutorial

Version Control in Rider
Working with Git, commit code, rebase and switch branches. Let's explore version control (VCS)!
VCS Operations Quicklist

Tip

VCS Operations Quicklist
Your next VCS action at hand!
Put New Project Under Version Control

Tip

Put New Project Under Version Control
The fastest way to register a new project directory under local version control.