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

Clone from GitHub

Tip

Clone from GitHub
Create a project by cloning it from GitHub
Commit Changes

Tip

Commit Changes
Commit your changes to VCS
Magic Wand

Tip

Magic Wand
Use the Magic Wand to Resolve Simple Conflicts
VCS Popup

Tip

VCS Popup
Open VCS actions using the keyboard
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
Using interactive rebase in IntelliJ IDEA
Selectively commit changes

Tip

Selectively commit changes
Selectively Commit Changes to a File
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
Making changes to code

Part of tutorial

Making changes to code
Making and committing our changes
Creating the pull request

Part of tutorial

Creating the pull request
How to create a pull request on GitHub
Getting the project

Part of tutorial

Getting the project
Forking and cloning the project
Negotiating the review process

Part of tutorial

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

Part of tutorial

Introduction
Contributing to open source software
Summary and Shortcuts

Part of tutorial

Summary and Shortcuts
Contributing to open source software Summary
Resolve Conflicts

Tip

Resolve Conflicts
Let the IDE help in the tricky business of resolving merge conflicts.
Move Work Aside With Stash

Tip

Move Work Aside With Stash
Use git's stash to move uncommitted work aside temporarily.
Move Work Aside With Shelve

Tip

Move Work Aside With Shelve
Move uncommitted work aside when you need to work on another branch.
Rebase Feature Branch

Tip

Rebase Feature Branch
Get your feature branch 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.
See Unsynced Commits

Tip

See Unsynced Commits
See what's happening on that other branch.
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
Unselect files or changed regions within files during the commit process.
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 changes when VCS can't help you.
Undo Last Commit

Tip

Undo Last Commit
Undo a commit...without misery.
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
Manage VCS Changelists in IntelliJ IDEA

Tip

Manage VCS Changelists in IntelliJ IDEA
Group and commit changes related to certain tasks
Creating a Project from GitHub

Tutorial

Creating a Project from GitHub
How you can create an IntelliJ IDEA project from your code in GitHub
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
Search text in Local History

Tip

Search text in Local History
Find exactly what you are looking for, even if you removed it
Cleanup code before commit

Tip

Cleanup code before commit
Remove all the redundant parenthesis and other unneeded code before commit
Run inspections before commit

Tip

Run inspections before commit
Catch all issues before your code reaches the upstream
Run tests before commit

Tip

Run tests before commit
Make sure your tests pass before reaching the CI/CD pipeline
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.
Use a lightweight inspection profile on commit

Tip

Use a lightweight inspection profile on commit
Fully customise the checks you must perform before you commit your changes to version control
Enable Git Staging

Tip

Enable Git Staging
Git Staging is an alternative approach to IntelliJ IDEA Changelists
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.