A changelist is a set of changes in files that represents a logical change in source code. The changes specified in a changelist are not stored in the repository until committed (pushed).
Any changes made to the source files, are automatically included in the active changelist. Initially, the Default changelist is active, but you can make any other changelist active. The active changelist is displayed on top of the Version Control tool window, with the name being highlighted in bold font.
In addition to the Default changelist, you can create new changelists, delete existing ones (except for the Default changelist), and move files between changelists.
All modified, deleted, unversioned and other files are managed in the Changes tool window. From this window you can:
- Commit (push) changelists.
- Create new changelists (if you want to keep an eye on certain files and changes).
- Remove existing changelists and set the default changelists.
- Rollback modified files in changelists.
- Add the unversioned files and directories to the version control.
- Move files between changelists.
- Show differences on selected files.
- Refresh the list of VCS changes.
- Jump to the source code from within a changelist.
- Shelve (stash) and unshelve (unstash) changes.