From OpenPLi Wiki
Revision as of 17:58, 30 December 2018 by Pr2 (talk | contribs) (Creating a branch: Add the 2 steps method)
Jump to: navigation, search

Some basic git commands


The file used by OpenPLi and plugins are stored online on a git system. The git system allows version control and is an efficient collaborative tool.
As every tools you need to understand how it work, and have some commands knowledge if you want to actively contribute to development/translation.

Installing the git client on your computer

On Mac OSX

Open up a terminal and type:

git --version

If git is not installed you should be prompted to install it.

On Windows

Go to GitForWindows and install it:
Remark: seems that git-gui doesn't start on Windows, you need to launch it in Windows 8 compatibility mode. (but we won't use it anyway).

On Ubuntu / Linux

sudo apt-get is Ubuntu command, it should also work on other distribution just adapt the package manager to it.

Open up a terminal and type:

sudo apt-get update
sudo apt-get install python gettext gawk sed git

Forking a repository

The first think to do if you want to collaborate is to go github and create an account on it.

Once you are registered to github simply connect to it.
Then go to this URL:

There you will see all the OpenPLi projects, select enigma2. Or use the direct link:

On the top right you will see the Fork button, click on it. Here you are, you have "forked" the OpenPLi/enigma2 project into your own git online environment.

Cloning a repository

When you want to clone a repository, access it with your favorite webbrowser.

You will see a green button called: clone or download, click on it. This will show you a specific url, take a copy of it (or press the button after it this should copy it for you).
Open up a terminal and type:

git clone

This will clone the OpenPLi enigma2 locally on your PC, in a folder named 'enigma2'


Never work on the main trunk always create a branch for you to work, it will really ease you life when you will want to create a PR but also to keep your trunk up-to-date with the original repository.

Creating a branch

Open up a terminal, go into your local repository clone and type.

git checkout -b mychanges

This will, create a branch named "mychanges" and switch into it. So now you are ready to make your changes.

The alternative way to create is, the 2 steps approachs:

git checkout mychanges
git branch mychanges

git checkout will create the branch, git branch we let you switch to it.

Display available branch

Open up a terminal, go into your local repository clone and type:

git branch

Display all the available branches:

git branch -a

Switching to a branch

Suppose that you want to switch to a branch called: branch_name

git branch branch_name


When you clone a repository this one is internally referenced as origin by git system, later on if you want to push a change towards the origin repository you will need to have write access to it. But since you clone from OpenPLi official repository, you won't have a write access to it. To work around this problem, you will need to push your changes to an online git that you have write access to and, guess what, by forking the OpenPli repository you have created your own valid writable copy. So lets we will now create let know your git that this upstream exist.

Creating an upstream to your own fork

Go to your personal github and enter the OpenPLi enigma2 fork that you create before.

git add remote upstream

It is done, now your local git know 2 repository: origin the one from OpenPLi and upstream your own fork of it.

Displaying the upstream

You can view the origin and upstream with this command:

git remote -v

This will show you both the origin url and the upstream url, this is useful to know who's who.

To be continued...