Personally, I'd prefer not to have a git client built into Continuous itself. I use an excellent app called Working Copy to do all my git on iOS. It's a very full featured git client. What Continuous would need to do is to implement the iOS8+ share pane extension so that it can send files to Working Copy (and Dropbox and any other app that's supports sharing) and vice versa. In fact, we might even be able to implement some of this ourselves. If you look at the "Sketches" demo project, the action/ share button in the corner is fully functional. We'd need to work out if there's a way for a Continuous project to read its own source code (or even better, the source code of other projects). I believe that the iOS share pane cannot handle multiple files, it can only send one file at a time. What Working Copy does is zip folders and repos into a single zip archive. So if we wanted to add more complete support for multi-file projects, we'd need to look at zip. But with the entire iOS SDK at our disposal, it should be possible.
For me (iOS 9) the share button in Sketch failed with an error on my iPhone 6S. TargetException Non-static method requites a target.
Unless Apple revise the rules, downloading code directly into the app in any way is probably not allowed. The excellent Codea (Lua) environment has skated along the edges of this with various app store rejections for years.
@memsom that's interesting, it works on my iPad Air1. Try commenting out the `PopoverPresentationController` line. On iPad, the action pane is a modal, and this is the line that tells it which button the hovering panel has to point to. On iPhones the panel just slides up from the bottom, so it doesn't need to know which button it points to. Though the error message makes it sound like it's not happy about that function being an anonymous closure. I know Swift and the iOS SDK, but I don't know Xamarin. In Swift, the pattern is usually `addTarget(target: AnyObject?, action: Selector, forControlEvents: UIControlEvents)`, where `target` refers to the instance that owns the `action` method (often its `self`). I guess this is a hold-over from Obj-C where functions are not first-class values? Could that be the "target" that your error message "Non-static method requites a target" refers to? @andydent this is true. But then for years the rule was no code-compilation, only interpreted languages like Lua and Python. The git app Working Copy has an "export to Codea" function, and Pythonista has a "run Python script" action pane extension, so I wonder whether the rules about this are changing?
Take a look into Working Copy: https://brax.tv/series/mobile-developer-toolbelt/commit-code-via-git-working-copy# Pretty much amazing
+1 Working Copy integration - this would make it really useful.
Just to clarify, we can currently push projects out of Continuous to Working Copy (and many other places) using the share sheet in Continuous, accessible by tapping the info button next to the project name. But getting code *in* to Continuous is currently a little harder. Time to look at the GitHub APIs I think...
@utsira yep, commenting out that line made it work as expected.
@memsom great, glad you got it working.
Being able to work with existing github repos is essential for this awesome app!!
There is a bug right now when importing project from Working Copy - it does "copy" files into Continuous, despite button for it named "Open from another app". Continuous should update files in Working Copy project, so they can be commited, but not hard copied into Continuous app without link to working copy project.
I don’t think that is really supported by iOS without extra work from the developer of Working Copy. Do you know if the Working Copy app supports taking changes in from other apps?
@memson yes, Pythonista and Textastic are changing code in Working Copy via dialogue "open from Files" - there find Working Copy project and choose it. Actually like in Continuous, but for some reason changes to code are not updated in Working Copy. If needed - I can record full screen video to show functionality.
It would close the circle and make git support more functional.. Why not do a little digging and send Frank an email or Tweet. If you can point him to how it needs to be implemented it’ll probably get done a lot quicker. I’m nothing more than a previous BETA tester, so talking to Frank is essential. I don’t know how often he swings by here so contact him directly as I think he’d like the feedback.
@memsom via support email? Already emailed about this bug. Well, it's not a bug, but... Any other editor or IDE does affect Working Copy files so... I reported this as a bug.