Bitbucket und ein kleines Entwicklungshaus

9

Ich bin gerade dabei, Mercurial endlich als unser Versionskontrollsystem bei der Arbeit zu rollen. Dies ist eine große Sache für alle, da sie schockierenderweise noch nie ein VCS verwendet haben. Nachdem sie den Fehler monatelang in die Ohren des Managements gesteckt hatten, sahen sie endlich das Licht und erkannten nun, wie viel besser es ist, als mit einem Netzwerk freigegebener Ordner zu arbeiten!

Während der Einführung denke ich über verschiedene Strategien zur Verwaltung unserer Daten nach und neige dazu, Bitbucket als unser "zentrales" Repository zu verwenden. Die Projekte in Bitbucket werden ausschließlich private Projekte sein und jeder wird von dort aus pushen und ziehen.

Ich bin offen für verschiedene Vorschläge, aber hat jemand ein ähnliches Setup? Wenn ja, auf welche Einschränkungen sind Sie gestoßen?

Marlon
quelle
+1 (a) weil mir die Frage gefällt (wir möchten GitHub zusätzlich zu einem gehosteten Server als externes Repository verwenden) und (b) um Ihr Unternehmen zu einer positiven Änderung zu bewegen
Jon Hopkins

Antworten:

6

Ich verwende Bitbucket für das Hosting von privaten Repositorys und einer meiner Kunden verwendet das Hosting von privaten Repositorys auf GitHub. Ein anderes Unternehmen, mit dem ich zusammenarbeite, verwendet das private Repository-Hosting von Subversion auf Jiras Servern.

Die externe Speicherung Ihrer Daten, wenn dies nicht der einzige Ort ist, an dem Sie sie haben, kann Ihr Risiko bei der Notfallwiederherstellung verringern. Da Sie physische Kopien der Quelle auf Entwicklungsmaschinen haben und sowohl Git als auch Mercurial die gesamte Entwicklungshistorie in den lokalen Kopien speichern, ist dies jetzt eine sehr praktikable Lösung. Sofern Sie nicht über Gigabyte Daten in einem einzelnen Projekt und eine langsame Netzwerkverbindung verfügen, empfehle ich diese Option. Es ist kostengünstig, bietet Entwicklern viel Portabilität und Flexibilität und bietet Ihnen automatische Redundanz.

Abhängig von Ihrem Grad an Paranoia können Sie befürchten, dass die Speicherung Ihres Codes durch Dritte Sicherheitsrisiken birgt. In der Praxis ist dies jedoch nicht schlimmer als Entwickler mit Laptops, die außerhalb Ihres Unternehmensnetzwerks verwendet werden können. Github und Bitbucket verwenden beide SSH, um Daten zu übertragen, sodass Man-in-the-Middle-Angriffe mit relativ geringer Wahrscheinlichkeit auftreten.

JasonTrue
quelle
3

Ich bin kein BitBucket-Benutzer, aber ich würde empfehlen, die Nutzungsbedingungen mit einem feinen Zahnkamm zu lesen. Sie müssen sich über die Nutzungsbedingungen, den Datenschutz und die Sicherheit / den Datenschutz wirklich sicher sein, wenn Sie private Projekte Ihres Unternehmens dort speichern möchten.

Ich nehme an, Sie haben versucht, einen Mecurial 'Central / Master' auf einem internen Computer zu hosten.

Martijn Verburg
quelle
2

Ähnliches haben wir mit ProjectLocker bei meinem alten Job gemacht. Ehrlich gesagt kommt es auf eine Kosten-Nutzen-Analyse an - sind Sie bereit, die Flexibilität und die Kosten für den Betrieb Ihres eigenen Hq / Git / SVN-Servers für den Preis aufzugeben, den Sie an BitBucket zahlen werden? Wenn ja, dann machen Sie es. Wir hatten nie wirklich ein Problem mit der Betriebszeit und es war eine gute Erfahrung.

mitchellhislop
quelle
2

Wir sind keine BitBucket-Benutzer (als Unternehmen). Wir betreiben mehrere Legacy-Systeme intern (CVS, SVN) und unser Haupt-Repository ist ein Git-System mit synchronisierten Caches in abgelegenen Büros. Aus Managersicht würde ich davon abraten, das geistige Eigentum Ihres Unternehmens auf die Server anderer zu übertragen, es sei denn, Sie verfügen nicht über ausreichende interne IT-Einrichtungen. Dieser Code ist das Lebenselixier Ihres Unternehmens. Hier sollte es nicht um Geld gehen, sondern um den Schutz Ihrer IP.

wolfgangsz
quelle
1

Ich würde sagen, es kommt definitiv auf eine Kostenanalyse an, die billiger ist. Führen Sie Ihren eigenen Server (oder eine VM-Instanz) aus oder kleben Sie ihn an eine andere Stelle.

Wenn für das Unternehmen bereits freigegebene Netzwerkordner eingerichtet sind, sollten Sie die Verwendung von Git in Betracht ziehen, da Sie diesen freigegebenen Netzwerkordner in Ihr "Remote" -Repository verwandeln git init --barekönnen und die Berechtigungen für die Netzwerkfreigabe bereits vorhanden sind für die Benutzer. Dann könnte jeder Benutzer den freigegebenen Ordner einfach als Remote hinzufügen git remote add origin file:///some/shared/folder (dies ist möglicherweise nicht die genaue Syntax für eine Datei, auf die verwiesen wird, ich würde sie für die genaue Syntax googeln).

Ich mache das im Grunde zu Hause, um meine persönlichen Projekte zu verwalten. Ich habe ein NAS-Laufwerk in meinem Heim-LAN, auf dem sich meine "Remote" -Repos befinden. Dann kann ich über einen Windows-Laufwerksbuchstaben von meinen verschiedenen PCs und Laptops auf diese zugreifen.

Rallye25rs
quelle
Das ist ein toller Vorschlag! Ich werde darüber nachdenken, aber ich würde es gerne in Mercurial behalten, da ich damit viel besser vertraut bin. Ich bin sicher, ich kann das Äquivalent in hg tun ...
Marlon
1

Ich schließe mich den anderen Programmierern an: Überlegen Sie genau, ob Sie Ihren Code preisgeben möchten .

Für mich wäre es nur eine Option, das VCS auszulagern, wenn Sie wirklich nicht über die Arbeitskräfte und / oder das Wissen verfügen, um Ihr eigenes Repository zu hosten (Mittelwert: einschließlich Backups und Wartung). Wenn Sie bereits freigegebene Netzwerkordner mit regelmäßigen Sicherungen haben, können Sie diese verwenden und die Sicherung ohne zusätzliche Kosten erhalten.

zusammenzucken
quelle
0

Ich habe BitBucket für eine Weile benutzt und festgestellt, dass es ein ziemlich guter Service ist. Ich glaube nicht, dass es Probleme mit der Privatsphäre oder der Sicherheit geben wird.

Wenn Sie sich jedoch unwohl fühlen, den Code Ihres Unternehmens auf den Servern eines anderen zu hosten, können Sie ein Quecksilber-Repository einrichten, auf das über ssh auf einem der Server Ihres Unternehmens zugegriffen werden kann. Siehe http://mercurial.selenic.com/wiki/SharedSSH und http://blog.mixu.net/2010/10/04/setting-up-private-ssh-based-mercurial-repo-hosting-on-centos / .

Zhehao Mao
quelle
0

Bitbucket ist gut für Open Source-Projekte.

Wenn dieses Projekt proprietär ist, würde ich vorschlagen, Ihren eigenen Code zu hosten. Es ist nicht so teuer, es selbst zu hosten, wenn Sie bereits ein IT-Setup haben. Finden Sie einfach einen fairen Server und stellen Sie Ihren Code bereit.

mercurial ist einfach zu konfigurieren.

Viel Glück und viel Spaß.

Mercurial ist wirklich nett. Vermisse es :(

Erion
quelle
0

Nun, für ein Unternehmen würde ich es vorziehen, sicherzustellen, dass sich das maßgebliche Repo des Projekts auf einem privaten Server befindet, auch wenn Sie einen immer aktuellen Klon auf bitbucket haben, nur um sicherzugehen.

Ich würde empfehlen , Rhodecode auf einem privaten lokalen Server zu installieren (für den schnellen Zugriff) und dann regelmäßig ein Skript-Update-Bitbucket zu haben, wenn Sie möchten. Bewahren Sie ohnehin mehrere Klone an verschiedenen Orten auf, Sie wissen es nie.

Klaim
quelle