# EGit Documentation

- EGit User Guide
- Getting Started
- Overview
- Basic Tutorial: Adding a project to version control
- Configuration
- Identifying yourself
- Setting up the Home Directory on Windows
- Pointing out the System wide configuration
- Create Repository
- Track Changes
- Inspect History
- GitHub Tutorial
- Create Local Repository
- Create Repository at GitHub
- Eclipse SSH Configuration
- Push Upstream
- EclipseCon 2012 Git Tutorial
- Concepts
- Repository
- Index
- Branches
- Local Branches
- Remote Tracking Branches
- Working Directory
- Recording Changes in the Repository
- Tasks
- Creating Repositories
- Considerations for Git Repositories to be used in Eclipse
- The short story
- The longer story
- Eclipse Workspace and Repository working directory
- Implications
- Creating a new empty Git Repository
- Creating a Git Repository for multiple Projects
- Starting from existing Git Repositories
- Starting the import wizard
- Cloning or adding Repositories
- Cloning a Repository
- Adding a Repository
- Selecting a Repository from the List
- Importing projects
- Wizard for project import
- Import Existing Projects
- Limiting the Scope for Project Import
- Use the New Projects Wizard
- Import as General Project
- Working with remote Repositories
- Cloning Remote Repositories
- Repository Selection
- Branch Selection
- Local Destination
- Cloning from specific locations
- Pushing to other Repositories
- Pushing to upstream
- Configuring upstream push
- Direct Push
- Push Wizard
- Push URI
- Push Ref Specifications
- Delete Ref Specifications
- Conflicting Push Ref Specifications
- Push Confirmation
- Push Result Report
- Fetching from other Repositories
- Fetching from upstream
- Configuring fetch from upstream
- Direct Fetch
- Fetch Wizard
- Fetch Ref Specifications
- Fetch Result Report
- Pulling New Changes from Upstream Branch
- Working with Gerrit
- Enabling Gerrit for a repository
- Pushing a change to a Gerrit Code Review Server
- Pushing as Draft
- Editing a change
- Fetching a change from a Gerrit Code Review Server
- Working with Gitflow
- Enabling Gitflow for a repository
- Starting a feature/release/hotfix
- Starting release from a commit other than HEAD
- Inspecting the state of the Repository
- Label Decorations
- Text Decorations
- Icon Decorations
- Commit Dialog
- Comparing Content
- Compare editor and Synchronize View
- Compare working tree with last commit
- Comparing Working Tree with Index
- Comparing Working Tree with a branch, a tag or a reference
- Comparing Working Tree with Any Commit
- From the project explorer:
- From the history view (files only):
- Comparing Two Commits
- Comparing Index with HEAD or Any Other Commit
- Comparing with Branches (Synchronize)
- Quickdiff
- Inspecting Commits
- View Diff for a Commit
- Showing the contents of a Commit
- Committing Changes
- Modifying the content
- Committing
- Committing with the Staging View
- Committing using Commit Dialog
- Commit Message
- Amending Commits
- Reverting Changes
- Reverting changes in the working tree
- Replace with File in Git Index
- Replace with HEAD
- Replace with Branch, Tag or Reference
- Replace with Commit
- Replace with Previous Revision
- Revert using quickdiff
- Reverting changes introduced by a specific commit
- Resetting your current HEAD
- Reset to specific branch or tag
- Reset to a specific commit
- Revert all local and staged changes
- Branching
- General remarks about branches
- Upstream configuration
- Checking out an existing Branch
- From the team menu on a project node:
- From the Git Repositories View
- From the History View
- Creating a New Local Branch
- From the team menu
- From the Repositories View
- From the History View
- Renaming an Existing Branch
- From the Team menu on a Project node
- From the Repositories View
- From the History View
- Deleting a Branch
- From the Team Menu on a Project node
- From the Repositories View
- From the History View
- Branch Creation Dialog
- Configure Branch Dialog
- Merging
- Merging a branch or a tag into the current branch
- Starting merge from the History View
- Starting merge from the Team menu
- Starting merge from the Git Repositories View
- Merge options
- Possible merge results
- Merge Result dialog
- Resolving a merge conflict
- Using Merge Tool
- Manual conflict resolution
- Finding conflicting files
- Editing conflicting files
- Adding conflict resolution to the git index
- Committing a merge
- Aborting Merge
- Rebasing
- Rebase Introduction
- Rebase, A Simple Example
- The Real World: Rebase Conflicts
- Starting Rebase
- Rebase Confirmation Dialog
- Rebase Conflicts
- Aborting Rebase
- Interactive Rebase
- Synopsis
- Starting interactive rebase
- Planning rebase
- Executing interactive rebase
- Safety Instructions
- Rebase with auto-stashing
- Cherry Picking
- Cherry-pick Introduction
- Cherry-pick Example
- Tagging
- Creating a Tag
- Replacing an Existing Tag
- Deletion of tags
- Light-weight and Signed Tags
- Patches
- Creating Patches
- Create a Patch from a Commit
- Patch Wizard
- Applying Patches
- Managing Repositories
- Adding Repositories to the Git Repositories View
- Adding a Repository manually
- Cloning a Repository
- Creating a Repository
- Adding a Repository using Copy and Paste
- Removing Repositories
- Removing a Repository from the Repositories View
- Deleting a Repository
- Structure of the Git Repositories View
- Functions of the Git Repositories View
- Project Import
- Branch and Tag Support
- Check-out of Branches and Tags
- Creation and Deletion of Branches
- Rebasing
- Merging a Branch or a Tag
- Synchronizing with a Branch or a Tag
- Determining the Checked-out Branch
- Resetting to a Branch or a Tag
- "Detached" HEAD
- Inspecting References
- Browsing the Working Directory
- Repository Configuration
- Remote Repositories
- Direct Fetch and Push Support
- Adding a Remote Configuration
- Changing Remote Configurations
- Gerrit Configuration
- Refresh
- Link with Selection
- Link with Editor
- Hierarchical Branch Layout
- Bare Repositories
- Removing Repositories from the Git Repositories View
- Showing Repository in Related Views
- Show in History
- Show in Reflog
- Show in Properties
- Working with Tasks
- Installation
- Commit Message Template
- Viewing Commits
- Tagging a commit
- Creating a branch from a commit
- Checking out a commit
- Cherry picking a commit
- Opening the commit viewer
- Searching for commits
- Git Search page
- Browsing Search Results
- Launching Git Search
- Open commit dialog
- Finding the author of each line in a file
- Working with Submodules
- Cloning Repositories with Submodules
- Browsing Submodules
- Adding a Submodule
- Updating Submodules
- Team Project Sets
- Import
- Export
- Format
- Reference
- Menus
- Project Context Menu
- Resource Context Menu
- Repositories View Menus
- History View Menus
- Git Workbench Toolbar and Git Workbench Menu
- Menu Actions
- Git Perspective and Views
- Git Perspective
- Git Repositories View
- History View
- Overview
- Opening the History View
- Organization of the History View
- Using the History View
- Inspecting the Commit Graph
- Displaying and Comparing versions of a File
- Working with the Filter Settings
- Toolbar actions
- Find
- Filter settings
- Compare Mode
- All Branches
- View Menu actions
- Configuring the View
- Context Menu actions
- Compare with working tree
- Compare with each other
- Open
- Checkout
- Create Branch...
- Delete Branch
- Create Tag...
- Create Patch...
- Cherry Pick
- Revert Commit
- Merge
- Rebase on top of
- Reset > Soft/Mixed/Hard
- Quickdiff > Reset Quickdiff Basline to HEAD
- Quickdiff > Reset Quickdiff Basline to first parent of HEAD
- Quickdiff > Set as Baseline
- Copy
- Show Revision Comment
- Show Revision Details
- Wrap Comments
- Fill Paragraphs
- Drag and Drop Support
- Working with the Revision Details Area
- Synchronize View
- Synchronization State
- Mode
- Models
- Navigation
- Git Tree Compare View
- Git Staging View
- Partial Staging
- Git Reflog View
- Git URLs
- Git References
- Refspecs
- Push Refspecs
- Fetch Refspecs
- Remotes
- Git Ignore
- Git Fetch Factory for PDE Build
- Updating This Document
- JGit User Guide
- Getting Started
- Taking JGit for a Spin
- Building the JGit CLI
- Running the JGit CLI
- Overview
- Inspecting the Repository
- Graphical History View
- Concepts
- API
- Repository
- Git Objects
- Ref
- RevWalk
- RevCommit
- RevTag
- RevTree
- Reference
- Porcelain API
- AddCommand (git-add)
- CommitCommand (git-commit)
- TagCommand (git-tag)
- LogCommand (git-log)
- MergeCommand (git-merge)
- Ant Tasks
- git-clone
- git-init
- git-checkout
- git-add
- Snippets
- Finding children of a commit
- Snippet Collection
- Advanced Topics
- Reducing memory usage with RevWalk
- Restrict the walked revision graph
- Discard the body of a commit
- Subclassing RevWalk and RevCommit
- Cleaning up after a revision walk
- Updating This Document
- EGit 4.8 New and Noteworthy
- EGit
- Features
- Usability Improvements
- Performance Improvements
- Build and Release Engineering
- Bug Fixes
- Contributors
- Updating This Document
- JGit 4.8 New and Noteworthy
- JGit
- Features
- Performance Improvements
- Build and Release Engineering
- Bug Fixes
- Contributors
- Updating This Document
- Git for Eclipse Users
- Centralised version control systems
- Distributed Version Control Systems
- How does it work?
- Changesets and branches
- Merging
- Pulling and pushing
- Cloning and remotes
- Initialising, committing and branching
- Worked example
- Rebasing and fast-forwarding
- Updating This Document
- EGit Contributor Guide
- Communication
- Automated Developer Setup
- Manual Developer Setup
- Obtaining Sources
- Cloning
- On the command line
- Using EGit (see [http://www.eclipse.org/egit/download/ download page])
- Repositories
- EGit
- JGit
- EGit GitHub Integration
- EGit PDE Tools
- Development IDE Configuration
- Tools
- Java Requirements
- Dependencies
- Running EGit from Eclipse
- Builds
- JGit
- EGit
- Mailing Lists
- Maven Build
- JGit Bazel Build
- FindBugs and PMD
- Checking for JGit API Changes using API Baseline
- Automated Signing and Publishing
- Signing (old method, replaced by automated procedure)
- Contribution to Release Train
- Documentation
- JGit
- EGit
- Tests
- JGit Unit Tests
- JGit HTTP Tests
- EGit Core Tests
- EGit UI Tests
- During Maven Build
- Auxilary testing tools
- Bugs
- Links
- Filing Bugs
- How to file bugs
- File a bug
- Bug Reports and Links
- Keywords
- Spam Bugs
- Website
- Contributing Patches
- Using Gerrit at Eclipse
- User Account
- Legal Paperwork
- Logon
- Gerrit Web UI
- Git over SSH
- Git over HTTPS
- SSH Keys
- Doing Code Reviews with Gerrit
- Using Gerrit with git command line:
- Adding a dedicated remote
- Using Gerrit with EGit:
- Using the Mylyn Gerrit Connector
- Granularity of Changes
- Branches
- Coding standards
- Braces for one-line statements
- Removing trailing whitespace
- Commit message guidelines
- Copyright
- Test before submitting
- Sending patches by mail
- Gerrit Code Review Cheatsheet
- Install the commit-msg hook in your repository
- To create a new change
- To update an existing change with a new commit
- To compare bulk diffs using Git
- To trigger Hudson build for a change
- To approve a change
- To add a reviewer
- Code Review
- IP Review
- Submission Guidelines
- Tips & Tricks
- Class Loading Issues
- Updating This Document