Online xcode project (Working together) - objective-c

I was wondering if Xcode has any possibilities to work on an xcode project from a server.
Like working together on the same xcode project with two people? Kinda like dreamweaver has the possibility to connect to ftp... Would come quite handy.
Didn't found anything on this on stackoverflow or google...
Thnx!

It has SCM support (CVS, Subversion and Perforce). This is the only way to work on the same project I guess.

I work with remote developers and we use either git or svn. Xcode does integrate with repositories but it's not necessary as you can achieve the same thing from the command line.
Using source control will allow multiple developers to work on a single project together. Both git and svn will merge files.

No, Apple has not provided this in the Xcode software. Nor is there any rumors on implementing this, it would be a nice feature but since Apple also doesn't allow plugins for Xcode we have to wait for Apple to add this ability to the software. This would be a really neat feature, but it could be a long time before we see this.

You can use GIT (http://git-scm.com/) and use a remote repository, like dropbox o github.
On XCODE4 you can use git, with out any additional plugin

Related

getting a repository for projects

When I was on an army programming course me and my friends used SVN with a repository we had. I wanna set up a repository so that I can work on my projects without having to worry about moving my files from pc to pc and working with the right version.
If there's something you can recommend and what source control program I can use I'd love that. Thanks!
Two commonly-used repository hosting sites are Github (https://github.com/) and Bitbucket (http://bitbucket.org). They use git (Bitbucket also supports Mercurial) instead of SVN, which is similar but has a slightly different workflow. These two services are easy to get started with and have great tutorials. And repositories are free!
You can:
Install, configure and run own instance of SVN-server on own host
Move to Assembla, which offer natural SVN-hosting
Select any other SVN-hosting
Create Git-repos on GitHub, but use SVN-gate (special SVN-URL) and SVN-clients

Retrieve Framework List

I'd like to know if it is possible to get a list of the frameworks being used in an Objective-C project.
Perhaps there's some way to access XCode's "Build Phases"? Doesn't matter if it's some obscure method not advised by Apple, I'm trying to make an XCode plugin.
Thanks
I haven't written a Xcode plugin (yet), but is there a way for you to use terminal commands? If this is possible you could open the projects build path and simply use
ls *.framework
They should also be linked in the .xcodeproj file.

How to "Version" Your Xcode Code

Sometimes I did some mistake. After that I made some bug and for some reason the program won't run. I want to go back to previous version. How would I do that?
In xCode 4 you can create a local git repository on creating a project. Look here.
If you are not using xCode 4, you can use external tools for git or svn. Just google for it, you will find a lot of solutions!
You need to use a revision control system. This is a big topic, so start by reading the Wikipedia page.
Xcode has support for a few revision control systems. This question discusses most of them, but git support wasn't available back then (although, personally, I have an irrational hatred of git).

Using GIT or SVN in XCode 3/4 without server

Ok, perhaps I'm trying to accomplish something not doable.
I am a single developer (not part of team).
I'm trying to get some kind of versioning system going. I had used CVS with XCode 3, but XCode 4 no longer has that as an option. I've heard that SVN and Git are better alternatives anyway.
Basically, I've wasted more than half a day trying to get XCode to work with SVN / Git out of the box. I do not have a server running, and would rather not expose my project on a server.
It doesn't make sense for me to have a separate user just to run the Git/SVN Servers, either.
I'm just trying to have version control using either one, in the simplest possible way.
I've tried to add Repo, using local file path (/Volumes/AAA/BBB/Repo) where I manually created the "Repo" directory. I've set the type as Subversion (and also tried Git). XCode says "Host is reachable". But, the Commit functionality is not there (Disabled). I can't import my working directory.
I just don't get it - must I have a server running in order to have SVN/Git, or can XCode just do it through command line? I much more prefer it being done over command line, since the server is complete overkill. Or, am I missing something? Maybe I'm putting in the wrong settings into XCode?
This isn't strictly an XCode 4 issue, I had the same issue with XCode3, but at least it had the CVS option - now it's gone.
With Git you don't need a central server or even a central repository unless you have multiple people on the project. SVN requires you to have a central repo & server running all the time, but with Git you can simply git init a new repo and start using it. If you don't have a central repo you will never use push, pull, or fetch.
Xcode's help mentions the following:
Choose Git or Subversion Xcode supports two SCM systems: Subversion
(often abbreviated svn) and Git. Subversion is always server-based and
the server is normally on a remote machine, though it is possible to
install one locally. Git can be used purely as a local repository, or
you can install a Git server on a remote machine to share files among
team members. The Xcode 4 installer installs the Git and Subversion
tools when you select System Tools. If you are working alone, it’s
generally easiest to use Git, as you don’t need to set up a server. In
fact, Xcode can automatically set up a Git repository for you when you
create a new project (see “Create a Git Repository For Your New
Project”). For a group project, the choice of Subversion or Git is
usually a matter of taste and prior experience. In so far as is
possible, Xcode provides a consistent user interface and workflow for
users of either Subversion or Git.
So the official advise is that in your case, Git is the easiest solution. I'm now in the same position as you described and will be trying Git as advised.
Previously, when working for a small company, we used a dedicated leftover MacMini as an SVN server; this was quite easy to set up, and worked like a charm for many years. Be aware that the SVN integration of Xcode 3 was better than that of Xcode 4 though, so that I ended up using Xcode 4 for development and basic SVN usage, together with Xcode 3 for SVN stuff that Xcode 4 wouldn't do anymore.

How do you distribute the IDE and it's configuration within your Team?

I'm wondering how Software Development Team distribute their Standard IDE(s)?
E.g. developing with Eclipse, custom Code formatter, svn Resository, Copyright Header..
At the moment my Team has a standard zip File which is then distributed withhin the developers.
Problem:
If one file, a Plugin or the IDE itself changes, e.g. new Coding Guidlines, Upgrade Eclipse 3.5.1 the whole distribution has to be done again. Every developer needs to unzip the bundel again. Imagine your working with different Workspaces (Jetty, different Tomcamt Versions, WTP) due to Project History That doesn't scale
I know that there are some related Articels
A new version of Eclipse just came out. Is there anything I can do to avoid having to manually hunt down my plugins again?
Manage Your Eclipse Install With A Local Git Repository
And some comercial Programs.
Eclipse also has a new Update-Installer Approach
But I don't see the Killer App. How do your team solve this? Is there a best practice?
I guess best would be a Program letting you choose your current Project and then downloads the configured IDE from the Server and leting you know if Project Config Files are Updated
For eclipse look at Buckminster it targets exactly your target I suppose, didn't use it personally through.
At my previous company they wrote a custom update agent that pulled from a centrally configured server which was updated by the team leaders. It worked well, until people wanted to install their own plugins.
Basically, a developer wanted a plugin, fought in futility to get it included in the default (managed) repo, installed it himself, then updates broke on his machine when the team lead had a sudden stroke of common sense and included it.
They never did come up with a 'good' way to manage it. But, at least they didn't put us all on terminal servers with thin clients.