Home

Awesome

MGit

MGit is a Git client Android App.

This is a continuation of the SGit project.

<img src="https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png" alt="Get it on Google Play" height="80"> <img src="https://f-droid.org/badge/get-it-on.png" alt="Get it on F-Droid" height="80">

Notes

Build Status

Join the chat at https://gitter.im/MGit-Android/Lobby

Translate - with Stringlate

Editing Files

As of version 1.5.7, MGit no longer provides an internal texteditor, instead if you wish to edit files, you will need to have an editor app installed.

An open source editor that has been tested to work with MGit is "Viper Exit, nee Turbo Editor"

but others that support File Providers should also work.

Supported Features

Quick start

Clone a remote repository

  1. Click on the + icon to add a new repository
  2. Enter remote URL (see URL format below)
  3. Enter local repository name - note that this is not the full path, as MGit stores all
    repositories in the same local directory (can be changed in MGit settings)
  4. Click the Clone button
  5. If required, you will be prompted for credentials to connect to the remote repo. MGit will download the repository (all branches) to your device

Create a local repository

  1. Click on the + icon to add a new repository
  2. Click on Init Local to create a local repository
  3. Enter the name for this repository when prompted
  4. A local empty repo will be created

URL format

SSH URLs

HTTP(S) URLs

ToDo List

Future enhancements and bugs are tracked here on Github.

License

See GPLv3

All code written by maks@manichord.com can at your option also be used under the MIT license.

Help

If you want to help improve this project, contributions, especially translations are very welcome. Also contributions to documentation via the wiki for this repo are also most welcome!

Contributing code

If you would like to contribute code, either a bugfix or a new feature, please make sure there is a open issue that addresses the new code. No Pull Requests will be merged that do not reference an existing issue in the repo.

Please use the Android Studio formatting settings set for this project in the repo.

All strings visible to the user need to go into strings resource file.

Project Goals

Non-goals for the project

Major Contributions

For new features, a discussion of the new functionality may need to take place in the comments on the issue covering it, so it may be best for that to occur before you spend time on writing the new code.

The app is about to have a major restructure. All new functionality in the app will be written in Kotlin/Rx per #277. Please be aware that the project is now using Data Binding Library and all future functionality should make use of it.

Submitting a Pull Request (PR)

Fork from this repo, create a new branch, commit your changes and then send a pull request against the master branch of this repo.

If you are working on a branch for some time, you may find that changes to master get merged in the meantime, if that happens please do NOT merge master into your branch! Instead rebase your branch onto the current head of master.