---
title: "Using External Git Client - Projects and MQL5 Algo Forge - MetaEditor Help"
description: "MQL5 Algo Forge is a Git-based storage system. After you complete initial steps and with Git installed on your computer, you... - Using External Git Client - Projects and MQL5 Algo Forge - MetaEditor Help"
image: "https://www.metatrader5.com/i/logo_metatrader5.png"
url: "https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_external_client"
---

[MetaEditor Help](https://www.metatrader5.com/en/metaeditor/help) → [Projects and MQL5 Algo Forge](https://www.metatrader5.com/en/metaeditor/help/mql5storage) → Using External Git Client

# External Git Client

MQL5 Algo Forge is a Git-based storage system. After you complete [initial steps](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_connect) and with Git [installed](https://git-scm.com/install/) on your computer, you can start using any external Git client.

The most popular Git clients include [TortoiseGit](https://tortoisegit.org/), [GitHub Desktop](https://github.com/apps/desktop), [Visual Studio Code](https://code.visualstudio.com/) built-in [Git integration](https://code.visualstudio.com/docs/sourcecontrol/overview), [GitKraken](https://www.gitkraken.com/), [Sourcetree](https://www.sourcetreeapp.com/), and others. These programs make it easy to run Git commands, resolve conflicts, and handle complex tasks.

By default, MetaEditor enables Git only for specific folders. Knowing these folders and how they work is critical. In the top menu of MetaEditor, click "File", then select "Open Data Folder".

![Open data folder](https://www.metatrader5.com/i/help/metaeditor/en/open_data_folder_menu_option.png)

You will be directed to your terminal's instance in File Explorer. The MQL5 folder should be visible there.

![Terminal instance folder location](https://www.metatrader5.com/i/help/metaeditor/en/terminal_instance_folder_file_explorer.png)

## MQL5 Folder [#](#mql5_folder)

The MQL5 directory is the primary data folder for algorithms. By default, most files or folders inside the MQL5 directory are not tracked by Git until you explicitly add them. When you run the [add command](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_working#add) on a file or folder under MQL5 in MetaEditor's Navigator, the items are added as a commit and pushed to the remote mql5 repository.

![MQL5 folder in File Explorer](https://www.metatrader5.com/i/help/metaeditor/en/mql5_folder_file_explorer.png)

The MQL5 directory functions as a private repository connected to the remote mql5 repository under your account on the MQL5 Algo Forge website.

![MQL5 repository webpage](https://www.metatrader5.com/i/help/metaeditor/en/mql5_repository_website.png)

## Shared Projects Folder [#](#shared_projects_folder)

The Shared Projects directory is in the root of the MQL5 folder, but its contents are independent of its containing repository. The Shared Projects folder houses individual repositories, each with their own .git folders, branches, etc.

When you [fork a public project](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_merging#forking_projects) on the MQL5 Algo Forge website, your forked copy becomes a standalone repository under your account.

![Forked copy webpage](https://www.metatrader5.com/i/help/metaeditor/en/forked_copy_website.png)

Refreshing [Shared Projects](https://www.metatrader5.com/en/metaeditor/help/mql5storage/projects#shared) in MetaEditor reveals the new repository there. [Cloning](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_merging#cloning_projects) the new repository downloads and saves the project files to the local Shared Projects folder.

![Shared projects in File Explorer](https://www.metatrader5.com/i/help/metaeditor/en/shared_projects_folder_file_explorer.png)

## Local Git Configuration [#](#local_git_configuration)

MetaEditor uses your MQL5 login as the Git user.name and your-mql5-login@forge.mql5.io as the user.email when committing changes. An external Git client, however, will default to your global Git configuration.

Before making your first commit via an external Git client, you need to set the user.name and user.email for each local repository to the same details used by MetaEditor. This prevents incorrect attribution of commits and related problems.

Open any terminal and navigate to the repository using this command:

```
cd /path/to/your/repository
```

Run this command to set your name:

```
git config user.name "your-mql5-login"
```

Run this command to set your email:

```
git config user.email "your-mql5-login@forge.mql5.io"
```

Alternatively, you can use built-in UI tools in your Git client to set the local Git configuration for a project. See your Git client's documentation ([TortoiseGit](https://tortoisegit.org/docs/tortoisegit/tgit-dug-settings.html#tgit-dug-settings-config), [GitHub Desktop](https://docs.github.com/en/desktop/configuring-and-customizing-github-desktop/configuring-git-for-github-desktop#configuring-different-author-information-for-an-individual-repository), [GitKraken](https://www.gitkraken.com/learn/git/git-config#git-config-with-gitkraken-desktop)) for more details.

## Credentials for MQL5 Algo Forge [#](#credentials_mql5_algo_forge)

MetaEditor automatically uses the active MQL5 session when interacting with the remote server of MQL5 Algo Forge. An external Git client, however, will request your credentials when it needs to communicate with the remote, e.g., when pulling or pushing changes.

When prompted for credentials in the Git client, enter your MQL5 login and password. What happens next depends on the Git client or its version.

Many Git clients, including TortoiseGit, VS Code, and GitHub Desktop, will try to save your credentials using the built-in Git Credential Manager (GCM). If successful, your credentials will be passed and stored inside the native Windows Credential Manager.

![Windows credential manager window](https://www.metatrader5.com/i/help/metaeditor/en/windows_credential_manager.png)

Some Git clients, including [TortoiseGit](https://tortoisegit.org/docs/tortoisegit/tgit-dug-settings.html#tgit-dug-settings-credential) and [GitKraken](https://help.gitkraken.com/gitkraken-desktop/authentication/), will try to save your credentials using their app environment or internal account manager. In this case, you need to consult your Git client's documentation for more details.

Saving your MQL5 credentials enables the Git client to interact with the remote server without having to ask you to enter your MQL5 login and password each time.

Once you set the correct git [configuration](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_external_client#local_git_configuration) and save your [credentials](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_external_client#credentials_mql5_algo_forge), you can start using the external Git client to perform any supported operation.

## In this section

- [Enabling MQL5 Algo Forge](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_connect)
- [Working with Projects](https://www.metatrader5.com/en/metaeditor/help/mql5storage/projects)
- [Working with MQL5 Algo Forge](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_working)
- [Viewing Project History](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_diff)
- [Collaborating and Merging](https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_merging)
- Using External Git Client

```json
{"@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ {"@type": "ListItem", "position": 1, "item": {"@id": "https://www.metatrader5.com/en/metaeditor/help", "name": "MetaEditor Help"}}, {"@type": "ListItem", "position": 2, "item": {"@id": "https://www.metatrader5.com/en/metaeditor/help/mql5storage", "name": "Projects and MQL5 Algo Forge"}}, {"@type": "ListItem", "position": 3, "item": {"@id": "https://www.metatrader5.com/en/metaeditor/help/mql5storage/mql5storage_external_client", "name": "Using External Git Client"}} ]}
{ "@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [{ "@type": "Question", "name": "MetaTrader 5: Using External Git Client", "acceptedAnswer": { "@type": "Answer", "text": "MQL5 Algo Forge is a Git-based storage system. After you complete initial steps and with Git installed on your computer, you can start using any..." } }] }
```
