Welches OSX / XCode-Versionskontrollsystem sollte ich für die iPhone-Entwicklung verwenden?
Ich habe die Entwicklung meiner ersten iPhone-app-Teil-Zeit, und möchte beginnen mit einer strengeren form von Versionskontrolle, als ich ' ve wurde mit in den vergangenen vier Monaten, d.h. für das kopieren von Quellcode-Ordner in ein anderes Verzeichnis und Zeitstempel.
Ich verwendet habe, SourceSafe und Team Foundation-System, aber ich habe nicht eine gute Idee, welche version control systems (VCS) für den Macintosh verfügbar. Ich habe gesehen, Werbung auf SO für ein Subversion-Frontend, sondern würde-wie einige andere Optionen.
Hier ist eine Liste mit meinen Anforderungen:
- Läuft lokal unter OS X Leopard 10.5.7
- Integration mit XCode 3.1.3 (wenn keine integration, benutzerfreundliche Schnittstelle)
- Basic VCS-Funktionen - check-in Kommentare, Verzweigung, benadelung
- Erweiterte VCS-Funktionen wie build-Automatisierung oder Berichte wäre schön, aber nicht entscheidend zu dieser Zeit
- Fähigkeit, mehrere Entwickler die Straße runter (6-12 Monate)
Vielen Dank im Voraus für die Hilfe.
InformationsquelleAutor der Frage billmaya | 2009-09-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mercurial wäre meine Wahl für Versionskontrolle für ein Projekt angefangen als solo-Projekt, wenn Sie nicht möchten, einrichten eines dedizierten Servers. Mercurial erfordert keine server, weil es ein verteiltes VCS, jede Arbeitskopie ist auch ein komplettes repository, so dass, sobald Sie installiert haben, Mercurial Sie sind bereit zu gehen, nur Typ "hg init" in das root-Verzeichnis deines Projekts und du bist Weg.
Es ist perfekt für die Arbeit allein oder mit einer kleinen Anzahl von Entwicklern (d.h. keine IT-Mitarbeiter oder Systemadministratoren zur Verfügung), es hat ein Dienstprogramm, mit dem Sie schnell eine temporäre server für Ihr lokales repository, so dass, wenn Sie treffen sich mit Menschen, die es einfach für Sie, Klonen Sie das repository oder share-änderungen. Sie können auch einfach geben Sie den Menschen Kopien Ihrer repository über E-Mail oder USB-Stick oder kopieren Sie Sie über das Netzwerk oder was auch immer in Einklang zu bringen und die änderungen an den Kopien, die jeweils gegen den anderen später.
Für mich Mercurial aus der Differenz zwischen der tatsächlich ein VCS für persönliche Projekte und einfach aufgeben, weil es zu viel Mühe macht. Die Einrichtung eines Subversion-server lokal ist nicht eine große Sache, aber es ist immer noch genug, um mich nicht zu kümmern, und wenn Sie wirklich wollen, um gründlich zu sein, Sie wollen würde, um zu denken über, wie man richtige backups, etc. Mit Mercurial an jedem Punkt können Sie einfach eine Sicherungskopie Ihrer Arbeitskopie zu anderen Medien und Sie haben ein backup. Ich weiß nicht, ob das wirklich Sinn macht, aber Mercurial ist ein Versionskontrollsystem, das Sie verwenden können, beiläufig und informell durch die verteilte Natur.
Kein Xcode integration, aber die verwendet verschiedene VCS' mit und ohne integration glaube ich nicht, es ist sehr wichtig, so lange gute Kunden sind verfügbar. Diese Tage habe ich größtenteils beigelegt, einfach nur Kommandozeile, und es ist erfrischend.
Perforce, IMO, richtig ist. Abgesehen davon, dass ein kommerzielles Produkt, es ist widerlich jenseits des Glaubens. Es erfordert, dass Sie eine Verbindung mit einem server zu allen Zeiten oder Dinge, die zu einem großen Schmerz in den Arsch. Also, wenn Sie wollen einfach nur, um zu arbeiten Dinge von mehreren Rechnern an mehreren Standorten oder wenn Sie wollen, um die Menschen auf das Projekt, das nicht auf dem gleichen Netzwerk die ganze Zeit, es wird zu saugen. Notgedrungen nur ständig Schläge auf den Kopf mit der Tatsache, dass Sie mit Perforce, keine andere VCS, die ich verwendet habe, ist so in Ihrem Gesicht und ärgerlich.
Git ist eine weitere Möglichkeit, mit einem ähnlichen feature-set, um Mercurial, die möglicherweise lohnt ein Blick auf. In meinem Fall habe ich auch Windows Sachen und Git ist, die Windows-Unterstützung ist angeblich Mist, also ging ich mit etwas, das funktioniert auf allen meinen Plattformen.
Build-Automatisierung IMO das build-server-job, nicht die VCS' job, wenn Sie so wollen, build-Automatisierung finden Sie einen geeigneten server zu bauen.
InformationsquelleAutor der Antwort Whatever
SVN oder Subversion enthalten ist, die mit Xcode und ist gut integriert. Wie Sie wachsen, haben größere Bedürfnisse, können Sie von Drittanbietern verwenden, Subversion-Server und verwenden Sie die gleiche SVN-Unterstützung über das Netzwerk. Wenn Sie nicht wie SVN, ich denke, XCode unterstützt CVS zu.
Wenn du nach etwas suchst, angemessen, Billig und erweiterbar, dann nur mosey auf mehr als auf der SCM-Menü von XCode, und überprüfen Sie heraus, was bereits vorhanden ist. Wenn Sie Hilfe beim einrichten SVN, nur Kommentar.
InformationsquelleAutor der Antwort mahboudz
Sieht ES aus wie subversion würde Ihre beste Wahl sein für XCode gibt es schon einige guidence bekommen, dass Sie mit XCode hier. Subversion-Adressen alle Funktionen, die Sie sprechen. Pinning insbesondere ist eine Funktion von Source Safe; jedoch kann subversion zu tun tagging. Build-Automatisierung ist nicht eine Funktion der source-control-system, sondern die source-control-Systeme sind in der Regel in continuous integration server-Szenarien. Ich habe nicht verwendet, aber von dem was ich verstehe Hudson ist ein continuous integration Server ist an Popularität gewinnt und momemtum. Weitere Informationen finden Sie auf der Hudson hier und hier
InformationsquelleAutor der Antwort Michael Mann
SubVersioN (SVN) erfüllt die (meisten) Ihre Anforderungen.
InformationsquelleAutor der Antwort Traveling Tech Guy
Ich würde auch eine Abstimmung für subversion seit XCode unterstützt es nativ. Ich nutze es selber und sind sehr zufrieden.
Jedoch ich würde Fragen, Ihre Anforderung zum ausführen der server lokal. Sicher, Sie können tun, dass keine Probleme mit der subversion. Aber würden Sie nicht nervös über Ihre Festplatte ausfällt?
Habe ich mit Beanstalkmeine host-Quellcode. Es ist kostenlos für bis zu 3 Entwickler, Sie werden in der Lage sein, aktualisieren Sie Ihr Konto, sobald Sie wachsen, es ist schnell und es ist SICHER.
InformationsquelleAutor der Antwort Rob Fonseca-Ensor
Ich sah in Xcode (3.2, aber so ist es vielleicht nicht genau die gleichen) und die Optionen für die source-control-integration von subversion, CVS und perforce.
Außerhalb von Xcode, gibt es ein paar sehr schöne GUI-clients für subversion für OS X.
Subversion wäre ein guter Ort, um zu starten, so scheint es.
Alle coolen kids mit verteilten VCSes in diesen Tagen, offenbar. Möglicherweise möchten Sie verbringen eine halbe Stunde Lesen, bis auf git oder mercurial (hg - meine Präferenz). Es gibt keine direkte integration mit Xcode, aber Sie sind leicht genug, um in zu erhalten.
InformationsquelleAutor der Antwort marramgrass
Perforce ist jetzt frei für bis zu zwanzig Benutzer, wird aber teuer sein nach. Möchten Sie vielleicht, check it out, aber. Xcode nicht mehr unterstützt native Perforce-integration, aber es gibt Skripte und ein plugin.
InformationsquelleAutor der Antwort Alex Reynolds