Question

Is there anyone who uses GitHub with MD for MonoTouch?

I set-up everything as this instruction says: http://help.github.com/mac-set-up-git/ Created a repo, committed some stuff into it...

And then in MD I'm trying to check out stuff and then it asks me for the passphrase, I'm typing and it says it's not matching. I tried to start all over again and set Git with a different password (and everytime updated the public key as well) and did that for three or four times and everytime it's the same - I cannot check-in nor checkout anything...

What could be wrong here?

UPD: Even if I try to use github's GUI utility for Mac, create a local repo, push it to the GitHub, and then if I open the solution in MonoDevelop, it fails and throws a bunch of different exceptions, and suddenly closes itself.

It says: Error while updating status of command: MonoDevelop.VersionControl.Commands.UpdateSolution.
System.IO.IOException: Unknown repository format ""; expected "0".

I can't just make it work with Source control. It doesn't let me do it neither internally nor using any third-party tool, I know it's still in beta but is it really impossible? Somebody help me, pls

UPD: Now I finally somehow managed to 'see' my remote Github repo, but still cannot push stuff into it. Authorization fails in MD. Tried to use .netrc file didn't help. Tried to use ssh and https connection strings - no success... Damn that stupid thing, and damn stupid me

Was it helpful?

Solution

This is a combination of two known bugs:

I believe the second one is fixed in MD 2.8 beta 3. It also has a known workaround. Basically, the GitHub Mac app creates local git repositories that are slightly unusual, and this breaks some of MD's assumptions. You can work around this by re-cloning your repository from github using some other tool such as commandline git or MonoDevelop itself. After that, you can use the GitHub mac app on the repository just fine; it's only its cloning/creating that's iffy.

OTHER TIPS

This sounds like a pathing issue.

However,

Please use the command line and see if you still have issues. Over the years I've moved away from any IDE integration for source control due to a number of reasons (performance, file locks, etc). In the end, I'm a lot faster with the command line than I would be in the GUI.

I hope you adopt the same practice ;)

I can confirm that this still does not work in MD 2.8.1. All git commands work fine from the command line, I can clone a repository from github and push/pull just fine. Working in MD, making changes and committing also works. But attempting a checkout/pull/push from MD always gives the following error:

NGit.Errors.TransportException: git@github.com:mark-farragher/XXX.git: Auth fail at NGit.Transport.JschConfigSessionFactory.GetSession (NGit.Transport.URIish uri, NGit.Transport.CredentialsProvider credentialsProvider, NGit.Util.FS fs, Int32 tms) [0x00000] in :0 at NGit.Transport.SshTransport.GetSession () [0x00000] in :0 at NGit.Transport.TransportGitSsh+SshPushConnection..ctor (NGit.Transport.TransportGitSsh _enclosing) [0x00000] in :0

Pushing the same changes from the command line using git push works fine though, and afterwards MD notices that there are no more local changes (= the push dialog is empty)

It seems as if the MD ngit library is not picking up the SSH keys in ~/.ssh/. Is there a file or enviroment variable somewhere to pass on credential info to MD?

BTW: I'm using OS/X Lion, MD 2.8.1 and have git 1.7.7 installed in /usr/local/git. The repository is private and hosted on github. I ran through a complete clone/checkout/commit/pull/push cycle on the command line without getting any errors.

It seems some bugs were fixed in MD 2.8.1

Not fixed in Windows... Same problem exists in 2.8.1

NGit.Errors.TransportException: git@github.com:NokNokLLC/XXX.git: Auth fail

yet local - command line is fine.....

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top