Git functions

After the implementation you can use the Git functions in the GEDI Project View.

On startup the Git integration in GEDI checks if all project paths are within a Git worktree. If the project paths are available, the context menu in the project tree shows the already existing Git commands.

Project View

The files in the project view are color coded according to their state:

Color State Example
black (normal) unchanged file
red changed file, not staged for commit
green changed file, staged for commit
magenta file with merge conflict
blue untracked file

The "data", "config" and "dpList" subdirectories are now shown in the project view, as they are usually part of version control.

Figure 1. GEDI-Folders

Git functions

A right mouse click on a project file or a directory opens the context menu with all available Git functions.

Figure 2. Git functions

All implemented Git functions are described in the following table. Furthermore, it indicates if a function is recursive or not, i.e. whether it affects directories (incl. subdirectories).

Git function Recursive Description
git status yes Shows the current state of the working tree.
git add yes Adds the file to the commit.
git commit yes Commits the added files to the repository, with a commit message.
git reset yes Reset the file to a specific commit.
git checkout yes Checkout of the specified file from the repository
git diff no Shows the differences between the selected file in your local workspace and the file in the repository.
git blame no Shows which author made changes to the selected file.
git log yes Shows the commits made to the selected file.
git pull yes Pulls the changes from the server and applies them to your local repository.
git push yes Pushes the commits from your local repository to the server.

Notes and Restrictions

  • Any changed files must be added to the commit with "git add" before they can be committed.

  • While commands with textual input or output are being executed (e.g.: git log) no other commands can be used until the waiting function has finished.

  • The commands "git pull" and "git push" are only available if the local repository is connected to a server.

  • You cannot create or delete files from the project tree in subprojects. You can only change and commit/push files from the GEDI.