Git Repositories Manager on iPhones


Introduction

is a Git repositories manager on iPhones and iPads, allowing for usecases such as software developments, blogging, etc. on the go. Notable distinction from other free Git apps is that we provide git push for free as well.

Note: The app's intended identity (a.k.a. its name) is the icon : There is NO readable alphabetical string. But as required by Apple, we give it OmiGit which comes from Omicron + Git and the former literally means "little O" as a reference to the shape of the icon.

Features

  1. Support most common revision control operations such as
    • git init: Initialize a local repo
    • git clone: Clone from a remote repo
    • git status: View current repository status
    • git diff: View changes between two commits
    • git add : Stage files to index for committing
    • git restore --staged (or the older git reset): Unstage files from index
    • git commit: Commit staged changes
    • git log: View revision (commit) history
    • git branch: View and add local branches
    • git push: Push changes to a remote
    • git fetch: Fetch changes from a remote
    • git merge: Merge changes from a reference
    • git checkout: Check out a branch
    • git reset: Revert the branch to a particular commit
  2. Designed with the latest Swift + SwiftUI technology to integrate well with the latest iPhones Look-and-Feel.
    1. Support the ubiquitous pull-to-refresh gesture: to rescan the status and to reload the commit history.
    2. Support the natural swipe gesture on the remote to push/fetch to/from a remote repository.
  3. Integrate with Files app: The repositories managed by the app are accessible from the iOS Files app so you could use any editor to edit the files.
  4. Provide a simple credential manager based on the remote URL prefix so you do not type the password over and over again.

Usage notes

only support HTTPS remotes, authenticated using user name and password. Most Git services such as Github and Azure DevOps already switched to personal access token (PAT) for password. See, for example Github instruction, or look up your Git service's instruction for creating one.

There are some differences between the git command line and our implementation.

  • git merge usually creates a merge commit if there is no conflict. does not so after a merge, you must make the commit yourself or if you don't like it, reset to the latest commit to discard the changes.
  • To ensure UI consistency, our git checkout does not allow for checking out an arbitrary commit (detached HEAD state). We do not check out remote tracking branches but you could create a local one to check out. To put it simply, our checkout is only for switching local branches.
  • To avoid data lost, git push does not support --force option yet.

Privacy Policy

This app does not collect any user information. All your files belong to you.