# Using git to download the ebe source code

## Using the installation script

If you use the install script, the script installs git and uses git to download the ebe source code into a directory named ebe. This might be a good first step since it installs all the required libraries and tools. Later you might wish to update the source code using:

    git pull

and then using the rebuild script or perhaps just make to compile the changed files.

## Cloning the ebe source code

Alternatively you can use git to create a copy (clone) of the ebe source code without using the install script. Assuming that you have installed git do this command:

    git clone git://git.code.sf.net/p/qtebe/code ebe

This command will create a directory named "ebe" within your current directory and all the source code for ebe will be in the directory. There will be a hidden directory named ".git" which contains information about the source code. This includes the location from where the code was cloned which makes it easy to update the code in the future. The .git directory also includes a history of all saved changes to ebe which could be used to revert to older code if necessary (hopefully never).

## Building ebe

There is a rebuild script which you can use to rebuild all of ebe. This is a pretty good idea after cloning. The rebuild script uses the qmake program to generate a Makefile from the ebe.pro file, removes all object files and all generated files. (Qt will generate some C++ files starting with "moc_". Then rebuild will compile all the source files. This may take a few minutes and you may prefer to get a little more intimate with the process in updating to save time. To build ebe enter:

    ./rebuild

The last thing done by rebuild is to use sudo to copy ebe and its language translation files to /usr/bin. These files have names like "ebe_fr.qm" and are generated by the lrelease program from files with names like "ebe_fr.ts".

## Updating the ebe source code

After cloning the ebe source code into your ebe directory, you can use git to pull changes to your ebe directory using:

    git pull

This will update only the changes which is pretty efficient. Most importantly is that git uses information in .git to know where and how to fetch the changes.

## Rebuilding ebe after an update

The simple choice is to use "./rebuild" again. You can probably save some time by using these commands:

    qmake
    lrelease ebe.pro
    make
    sudo cp ebe *.qm /usr/bin

If you wish to use ebe in English then you can skip the lrelease command and copying *.qm to /usr/bin