Frage

Ich bin ein einsamer Entwickler im Moment; bitte teilen Sie Erfahrungen auf das, was ist ein guter VC-Setup für einen einsamen Entwickler.

Meine Einschränkungen sind;

  • Ich arbeite auf mehreren Rechnern und müssen sie halten synchronisiert up
  • Manchmal offline Ich arbeite

Ich bin derzeit mit Subversion (nur den Client zu einem Remote-Server), und das funktioniert ok. Ich habe Interesse an Mercurial und Git DVCS, aber keiner ihrer Anwendungsfällen sinnvoll zu meiner Situation.

EDIT: Ich habe meine aktive Entwicklung zu Fossil http://www.fossil-scm.org/ , nachdem sie mit einem Kunden trialing. Ich mag die Funktionen mein Repositories AutoSync (Verringerung der versehentlichen Gabeln), die Dokumentation Unterstützung (beide Wiki und Embedded / versioniert), die unterstützt meine Notwendigkeit, den Code und das Projekt in verschiedenen Räumen zu dokumentieren, die leicht issue tracker, schön Zugang zu konfigurieren Steuerung, im Design anpassbares Web-Interface und hilfreiche Community.

War es hilfreich?

Lösung

Vielleicht schlage ich eine ziemlich neue Versionskontrolle genannt Fossil.

Dies ist kein mir zu Projekt wird von Dr. Richard Hipp, gleichen Typ, der SQLite tat. Das gesamte Repository ist eine SQLite-Datei, so dass es ist sehr solide. Sie haben ein Wiki und ein Ticket-System eingebaut. Sie viele Benutzer mit unterschiedlichen Rechten haben, so können Sie zum Beispiel geben die Benutzer direkt Tickets ausstellen, aber nicht Quellcode anzuzeigen.

Das ist ziemlich einfach, geradlinig und es funktioniert als verteiltes System, was bedeutet, können Sie klonen und Kasse lokal als auch remote.

Weitere Informationen finden Sie auf http://www.fossil-scm.org/ und wenn man genau hinschaut sieht man, dass die ganze Seite eigentlich Fossil ist.

Eine Sache, die mich wirklich mit fossilen beeindruckt ist, dass es nur eine Datei ist, das ist es. Das ganze fossile Programm ist eher klein, aber wenn man bedenkt, wer der Autor ist, das ist nicht wirklich eine Überraschung.

Und da Ihr Repository eine SQLite-Datei, kopieren Sie es einfach und Sie haben eine Sicherung.

Andere Tipps

Jede Person wird wahrscheinlich sagen, dass ihre Lieblings DVCS das Beste für Sie ist. Ich würde sagen, Sie Mercurial ist das beste! ; -)

Aber das ist Mist . Sie müssen definitevely eine DVCS, sondern versuchen, sie alle, oder zumindest die meist verwendete, und Ihre Wahl selbst machen. Die Wahl der DVCS, dass Sie einen Guru kennen auch eine vernünftige Wahl ist, BTW. Ich würde empfehlen, versucht (oder die Dokumentation zu lesen) mindestens Mercurial, Git und Bazaar. SVK kann die wünschenswerte Eigenschaft, die es entworfen ist mit SVN zu interagieren, aber ich das letzte Mal überprüft sie böse Performance-Probleme hatte. Git hat auch einige SVN Interaktion Plugin, AFAIK.

Offline arbeiten macht absolut Sinn für Git. Sie können Ihre gesamte Geschichte, machen verpflichtet, tun verschmilzt, schaffen Zweige, im Wesentlichen alles tun, im Zusammenhang mit Ihrem Repository offline durchsuchen. Darüber hinaus können Sie ein zentrales Repository eingerichtet, die der „Master“ ist, das heißt Sie in diesem zentralen Repository alle Änderungen drückt. So können Sie immer wissen, wo der letzte Code ist, aber Sie erhalten auch den Vorteil, in der Lage, Änderungen von einem zum anderen Gerät zu senden, wenn Sie jemals brauchen.

I umgewandelt vor kurzem alle meine 80+ Subversion-Repositorys zu Git, und ich habe es nicht bereut.

Bazaar : Sehen Sie die Solo Use Case und Basar in 5 Minuten .

Speziell für die Offline-Nutzung, ein verteiltes Versionskontrollsystem ist der Weg zu gehen.

Subversion funktioniert super (vor allem mit TortoiseSVN). Ich glaube nicht, dass verteilte VC einen Vorteil in einem einzigen Entwickler Szenario haben würde.

Edit: Ich hatte nicht bemerkt, die „ich manchmal Offline arbeiten“ Teil, als ich ursprünglich geantwortet. In diesem Fall nehme ich an Sie die zusätzliche Komplexität eines DVCS mit der Tatsache gewichten müssen, dass es Ihnen offline Geschichte / Revisionen gibt.

ich immer empfehlen darcs für diese Situation ( hier ist meine Antwort auf eine ähnliche Frage ) als Kommandozeilen-Benutzeroberfläche ist eine Freude zu bedienen und Freude ist, was ich will von meinem eigene Entwicklung:)

Git mit einigem bearbeitbar GUIs mitgeliefert wird, aber ich habe es zu unhandlich gefunden im Vergleich zu darcs, wenn ich die Befehlszeile traf für persönliche Projekte zu verwenden.

Entweder werden erfüllt Ihren Bedarf offline zu arbeiten, und sie sind beide leicht mit Änderungen zu synchronisieren.

Subversion erfordert Zugang zu einem zentralen Repository. Wenn Sie offline arbeiten und von mehreren Maschinen, das heißt, dass Sie keine Revisionen vornehmen können im Offline-Modus.

Eine nackten Knochen Unix Lösung wäre, eine Geschichte innerhalb des Arbeits dir zu halten mit RCS und synchronisieren mit dem Unison . Der Haupt Vorbehalt wäre, dass, wenn Sie Maschinen wechseln, würden Sie sie zuerst synchronisieren müssen, bevor Sie neue Revisionen beginnen zu begehen. Wenn das ein Problem ist, am besten Sie eine echte DVCS suchen.

Sie können die Antworten auf die Frage finden, fragte ich nützlich: (Armee von einer) Alternative zu VSS für eine Ein-Mann-Show:

Alternative zu VSS für einen Mann Show (Armee von einem?)

Sie haben eine DVCS versuchen (oder wie ich es nenne ein peer2peer VCS). Ich bin einverstanden mit nowhereman. Verschwenden Sie keine Zeit mit SVN und alle weichen arround es machen es irgendwie nützlich. Ein DVCS es ist mehr intuitve, dass der alte und veraltete Client-Server-Stil. SVN weiß nicht, was ein Tag ist, oder ein Zweig. Für Svn alle sind nur Kopien.

. Zum Beispiel: es ist so dificult einen Tag als auch von einer Revisionsnummer zu implementieren

In Mercurial einen Tag ist genau das. Sie können nicht halten Versionen eines Tracking-Tag, wie Sie in SVN.

Lesen Sie hier DVCS führen zu starten. Dann können Sie SVK, Mercurial aka hg oder git verwenden. Aber bitte geh nicht zurück in der Zeit

Ich bin ein großer Fan von verteilten Versionskontrolle. Ich habe gespielt um mit git, Mercurial und BZR, und ich verwende jetzt git für alle meine Projekte. Alle drei von ihnen sind für den persönlichen Gebrauch, weil es so einfach ist, ein neues Repository auf Ihrem Computer zu erstellen. Sie müssen keine Server ausgeführt werden.

Hier sind ein paar Ideen für das Repository auf mehreren Computern zu teilen. 1) Verwenden Sie einige gehosteten Dienst wie Github. Normalerweise sind diese kostenlos für Open-Source-Projekte und niedrige Gebühr für kommerzielle Projekte. Wir verwenden Github bei der Arbeit. 2) Verwenden Sie Dropbox eine gemeinsame Internet-gesicherte Festplatte zu erstellen, die alle Computer zugreifen können. Es ist kostenlos für weniger als 2 GB. (Wenn Sie auf Ubuntu sind, Ubuntu One ist eine weitere Alternative.) Setzen Sie Ihre Master-Git Repository auf Dropbox und dann lokale Repositories auf jedem Ihrer Computer setzen. (So, Dropbox spielt die gleiche Rolle wie Github.) Es ist völlig kostenlos, können Sie offline leicht arbeiten, können Sie das Repository mit anderen Entwicklern später teilen, wenn es nötig ist, und es wird automatisch gesichert.

Auch wenn Sie wirklich SVN verwenden möchten, schauen Sie sich eine gehostete Lösung wie CVSDude (trotz des Namens, sie SVN laufen), anstatt einen eigenen Server ausgeführt wird. Sie werden Ihren Code für den Zugriff von jedem Ort der Lage sein, und es wird Sie nur ~ 10.05 $ kosten / Monat.

SourceGear Vault ist für einen Entwickler frei und ist sehr gut.

i empfehlen assembla.com - sie frei svn, Wiki und trac bieten. Cant bekommen, dass besser als!

Wenn Sie mit Subversion comfortabel, ich schlage vor, Sie haben einen Blick auf SVK

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top