Ich möchte ein Synchronisierungs-Repository einrichten, das Dropbox ähnelt.
Ziele / Anforderungen:
- Kostenlos (Open Source sehr vorzuziehen)
- Linux-Host (wahrscheinlich Ubuntu)
- Windows / Mac / Linux-Clients
- Potenzial für mehrere Benutzer mit eingeschränktem Zugriff (optional)
- Am liebsten einfach, muss nicht unbedingt automatisch sein
- Revisionskontrolle sehr vorzuziehen
Grundsätzlich möchte ich in der Lage sein, mehrere Computer zu verwenden, die mit unterschiedlichen Betriebssystemen möglich sind, und auf alle Dateien zugreifen, sie verwenden und sie synchronisieren zu können. Ich möchte auch eine lokale Kopie des Repositorys haben, wenn ich nicht mit dem Netzwerk verbunden bin (als würde ich an einem Laptop arbeiten, möchte ich ein lokales Repository behalten, um die Revision fortzusetzen und später mit dem "Master" -Repository zusammenzuführen ).
Zum Beispiel bearbeite ich tagsüber einige Bilder auf meinem Laptop außerhalb meines Netzwerks, aber wenn ich nach Hause komme, möchte ich die Änderungen, einschließlich inkrementeller Änderungen, mit meinem Desktop zu Hause synchronisieren.
Ich möchte auch, dass meine Mitbewohner auf dieses Repository zugreifen und es verwenden können, aber den Zugriff auf bestimmte Dateien beschränken. Zum Beispiel möchte ich dies möglicherweise zum Sichern von Finanzunterlagen verwenden, möchte aber nicht, dass sie Zugriff auf diese Dateien haben.
Ich bin ein Programmierer und mit SVN vertraut, aber ich weiß, dass dies nicht am besten geeignet ist, da es Binärdateien nicht gut handhabt und kein lokales Repository führt. Ich weiß, dass es bessere Möglichkeiten gibt, aber ich kenne sie nicht gut genug, um die beste zu wählen.
quelle
Antworten:
Für die Subversion können Sie ein lokales Repository haben - erstellen Sie einfach eines lokal und fertig. Sie können dann regelmäßig mit svnsync mit einem Remote-Repo synchronisieren. Oder machen Sie es umgekehrt, verwenden Sie ein Remote-Repo und synchronisieren Sie es lokal (wie bei Backups).
Svn verarbeitet Binärdateien gut oder zumindest so gut wie jedes andere SCM. Das Problem mit Binärdateien ist, dass sie schwer zu unterscheiden sind. Dies ist kein Fehler bei svn, sondern nur eine Eigenschaft von Binärdateien.
Git oder Mercurial (oder Bazaar ) klingen für Ihre Anforderungen besser geeignet, da es sich um verteilte SCMs handelt, bei denen Sie ständig an einem lokalen Repo arbeiten und dann Änderungen an ein Remote-Repo übertragen. Mercurial ist wahrscheinlich das Beste für Windows, da Sie über gute GUI-Tools verfügen. Bazaar wurde von Canonical und Git von Linus entwickelt. Das sind ungefähr alle Unterschiede zwischen ihnen, die irgendjemand interessiert :) Es gibt Vergleiche im Web - abgesehen davon, dass Git kein natives Windows ist, ist Mercurial wahrscheinlich besser, da es eher das unterstützt, was die Remote-Benutzer haben, während Git eher das ist, was Remote-Benutzer haben, was Sie ihnen überlassen. Dies erfordert mehr Aufwand von Ihnen, wenn Sie Ihre Anforderungen erfüllen (beide können natürlich alle oder Teilmengen gemeinsam nutzen, aber es ist für Mercurial einfacher, eine Teilmenge einzuschränken, als für Git, alle zu teilen).
Wenn Sie 'beide' verwenden möchten, können Sie git-svn oder SVK verwenden, die SVN verteilte Funktionen hinzufügen.
quelle
Ich würde git vorschlagen. Richten Sie einfach verschiedene Repositorys für Ihre Finanzdaten und Ihre "freigegebenen" Daten ein. Der Zugriff erfolgt über ssh.
quelle
Vielleicht möchten Sie http://www.sparkleshare.org/ ausprobieren. Eine aktuelle Diskussion darüber finden Sie unter http://apps.ycombinator.com/item?id=1424299 .
quelle
Gibt es einen bestimmten Grund, warum Dropbox bei Ihnen nicht funktioniert? Es deckt alles auf Ihrer Funktionsliste ab und bietet Unterstützung für mobile Geräte. Ich bin mir nicht sicher, ob Sie ein "einfaches" Versionskontrollsystem finden, das Binärdateien gut handhabt.
Wenn Sie sich für Git entscheiden, finden Sie hier einen interessanten Beitrag zum Hosten Ihrer Git-Repositorys in Dropbox:
http://intranation.com/entries/2010/02/using-dropbox-git-repository/
Diese Technik sollte auch mit Mercurial- und Subversion-Repositorys funktionieren.
quelle
iFolder . Überprüfen Sie die Funktionen, um festzustellen, ob Sie danach suchen. (Es gibt keine Revisionskontrolle. Wenn diese Funktion ein Muss ist , ist iFolder nicht das, wonach Sie suchen.)
quelle
Ich denke, Subversion ist der richtige Weg.
Es wird auf vielen Plattformen umfassend unterstützt und es gibt gute Clients für Windows , Mac und Linux, unter anderem.
quelle