GitMongo FAQ

General

What devices does GitMongo supported?

It is compatible with iPhone 3GS, iPhone 4, iPhone 4S, iPhone 5, iPod touch(3rd generation), iPod touch(4th generation), iPod touch(5th generation) and iPad. Requires iOS 5.0 or later.

Git

Can I pause and resume git clone?

No. We do not support pause and resume of git clone. If you switched GitMongo into background, the connection may be disconnected by iOS after some time. Even worse, the application may be killed by os. In either way, the git clone is incomplete and you may need to clean the partial downloaded data manually. (See next FAQ)

So, please ensure you have a stable network connection before cloning a git repository.

I failed to clone a repository with error message: Foo exists and is not an empty directory

If the message shows, it means you already have a folder with corresponding name. If you do not provide repository name when you clone, the application will generate name from its URL. For example, git://github.com/torvalds/linux.git generates linux as its name. You can use an alternate name in the repository name field.

In some cases, you may have some folder in your directory that prevents you from cloning. You can use “Local Folder” to access Documents folder of the application, and delete the folder when needed.

I can’t clone git://github.com/torvalds/linux.git, the error message is “Target OID for the reference doesn’t exist on the repository”. What’s that?

Generally, this error message happens when device is iPad 2/iPad Mini/iPhone 4/iPhone 4S. They have 512MB RAM. Linux is so big that we can’t handle it, if you are using the New iPad or iPhone 5, there should be no problem, cause they have 1GB RAM.

If you have the same problem for a repository much less than linux, and still get the message. Maybe you have some background applications that refuses to release memory even if iOS gives low memory warning, for example, Skype. Stop the app completely(if you don’t know how to, refer to this article), or just reboot the device.

I can’t clone my repository, the error message is “No Content-Type header in response”

Generally, this error indicates your http/https transport does not support smart protocol. GitMongo only support smart protocol over HTTP/HTTPS. For more information about what is smart protocol and how to setup for your server, read http://git-scm.com/book/en/Git-Internals-Transfer-Protocols and http://git-scm.com/2010/03/04/smart-http.html

Clone with ssh failed with “Early EOF”

Generally, this error happens when you are using the following form of URL:
ssh://gitserver.com/path/to/repository.git
If the path is an absolute path, however, you should add a slash after host name, like
ssh://gitserver.com//path/to/repository.git
Or you can use another form
username@gitsever.com:/path/to/repository.git

What transport is supported when cloning?

git, http, https and ssh is supported.

However, we only support smart protocol over http and https. Dumb protocol is not supported. You should know that smart protocol is much more efficient than the backwards-compatible dumb protocol. If your service provider does not support smart protocol, consider changing one.

Which git hosting does GitMongo support

GitMongo works if the host provides smart protocol over git, http, https or ssh transport. I tested several git hosting, the transport supported is prefixed with a ‘+’, those who don’t is prefixed with a ‘-’. Gitshell, code.google.com and android.googlesource.com is not supported, if you are using these git hosting service, please wait for later version. The git hosting services not list below is not tested, it does not mean GitMongo doesn’t support them.

github: +git, +http, +https, +ssh
gitshell: -http, +ssh
code.google.com: -http
android.googlesource.com: -http
gitcafe: +git, +ssh
gitbucket: +https, +http, +ssh
projectlocker: +https, +ssh
unfuddle: +https, +ssh

Video demos

For video demos of GitMongo, click here.

Posted in GitMongo Tips