git - Erste Schritte mit der Versionskontrolle

Translate

Ich muss die Versionskontrolle implementieren, auch nur für die Entwicklung, die ich zu Hause mache. Ich habe gelesen, wie großartig Subversion in den letzten Jahren ist, und wollte mich nebenbei dem Lernen widmen, bis ich hörte, dass Git das aufstrebende Versionskontrollsystem ist.

Sollte ich mich angesichts der Situation zurückhalten und sehen, welches die Nase vorn hat? Was sind ihre relativen Vorteile?

Ein Problem, das mir bei Git aufgefallen ist, ist, dass es nicht viele voll funktionsfähige GUIs gibt, was für viele Benutzer in meinem Team wichtig ist.

Es würde auch nichts ausmachen, Vorschläge zu machen, wie man mit dem einen oder anderen anfängt. (Tutorials usw.)

This question and all comments follow the "Attribution Required."

Alle Antworten

Translate

Das Wichtigste an der Versionskontrolle ist:

Fangen Sie einfach an, es zu benutzen

Die Versionskontrolle nicht zu verwenden, ist eine schreckliche Idee. Wenn Sie die Versionskontrolle nicht verwenden, hören Sie sofort auf zu lesen und verwenden Sie sie.

Es ist sehr einfach zu konvertieren

cvs<->svn<->git<->hg

Es spielt keine Rolle, welche Sie wählen. Wählen Sie einfach die für Sie am einfachsten zu verwendende aus und beginnen Sie mit der Aufzeichnung des Verlaufs Ihres Codes. Sie können später jederzeit auf ein anderes (D) VCS migrieren.

Wenn Sie nach einer benutzerfreundlichen Benutzeroberfläche suchen, schauen Sie sich diese anTortoiseSVN (Windows)undVersionen (Mac)(Vorgeschlagen vonCodierung ohne Kommentare)


Bearbeiten:

pix0r sagte:

Git hat einige nette Funktionen, aber Sie werden sie erst schätzen können, wenn Sie bereits etwas Standardisierteres wie CVS oder Subversion verwendet haben.

Diese. Die Verwendung von git ist sinnlos, wenn Sie nicht wissen, was die Versionskontrolle für Sie tun kann.

Bearbeiten 2:

Habe gerade diesen Link auf reddit gesehen:Subversion Spickzettel. Gute Kurzreferenz für die svn-Kommandozeile.

Quelle
Hobart Lee
Translate

Verwenden Sie Subversion, es ist einfach einzurichten, einfach zu bedienen und verfügt über zahlreiche Tools. Jedes zukünftige Revisionssystem wird von der SVN-Funktion importiert, sodass Sie nicht später Änderungen vornehmen können, wenn Ihre Anforderungen steigen.

Quelle
Evan Lee
Translate

DasSubversion-Buchist die beste Wahl, um das Tool zu erlernen. Möglicherweise gibt es noch andere Schnellstart-Tutorials, aber das Buch ist die beste Referenz, die Sie finden werden.

Git hat einige nette Funktionen, aber Sie werden sie erst schätzen können, wenn Sie bereits etwas Standardisierteres wie CVS oder Subversion verwendet haben. Ich würde definitiv den vorherigen Postern zustimmen und mit Subversion beginnen.

Quelle
Translate

Wenn Sie neu in versioncontrol sind, lesen Sie Folgendes:
Quellcodeverwaltung HOWTO

Quelle
Beck Lee
Translate

Gehen Sie für SVN. Wenn Sie noch nie zuvor die Quellcodeverwaltung verwendet haben, spielt dies für Sie auf die eine oder andere Weise keine Rolle.

Außerdem ist die Verwendung eines Quellcodeverwaltungssystems nicht sehr lernintensiv. Wenn Sie eines lernen, können Sie zu einem späteren Zeitpunkt problemlos zu einem anderen wechseln.

SVN ist ein großartiges Tool, das die meisten Ihrer Anforderungen erfüllen sollte. Und da es das schon gibt, gibt es eine ganze Reihe von GUI-Tools (zum Beispiel TortoiseSVN).

Gehen Sie für SVN.

Quelle
Morton Lee
Translate

Eine freundliche Erklärung der meisten Grundkonzepte finden Sie unterEin visueller Leitfaden zur Versionskontrolle. Der Artikel ist sehr SVN-freundlich.

Quelle
Tobey Lee
Translate

Ich habe RCS, CVS, SCCS, SourceSafe, Vault, Perforce, Subversion und Git verwendet.

Ich habe BitKeeper, Dimensions, Arch, Basar, SVK, ClearCase, PVCS und Synergy bewertet.

Wenn ich heute ein neues Repository starten müsste, würde ich wählengit. Hände runter.

Es ist kostenlos, schnell und befindet sich in der aktiven Entwicklung.

Und Sie können es mit git-svn als Client für jedes Subversion-Repository verwenden.

Es rockt.

Quelle
Meroy Lee
Translate

@ superjoe30

Was ist mit der Quellcodeverwaltung auf Ihrem eigenen Computer, wenn Sie der einzige Programmierer sind? Ist das eine gute Praxis? Gibt es verwandte Tipps oder Tricks?

Ich finde, Git ist dafür eigentlich einfacher, da Sie keinen Server benötigen oder sich Gedanken über die Eingabe von URLs machen müssen und so weiter. Ihr Versionskontrollmaterial lebt nur in der.gitVerzeichnis in Ihrem Projekt und Sie gehen einfach voran und verwenden es.

5 Sekunden Intro (vorausgesetzt, Sie haben es installiert)

cd myproject
git init
git add * # add all the files
git commit

Das nächste Mal nehmen Sie einige Änderungen vor

git add newfile1 newfile2 # if you've made any new files since last time
git commit -a

Solange du das tust, hat Git deinen Rücken. Wenn Sie es vermasseln, ist Ihr Code im netten Git-Repository sicher. Es ist toll

  • Hinweis: Es ist vielleicht etwas schwieriger, Dinge aus Git herauszuholen, als sie hineinzuholen, aber es ist weitaus besser, dieses Problem zu haben, als die Dateien überhaupt nicht zu haben!
Quelle
April Lee
Translate

Aus eigener Erfahrung würde ich git nicht als Einführung in die Versionskontrolle empfehlen. Ich benutze es jetzt seit ein paar Monaten und mein Eindruck ist, dass es sehr mächtig und - jetzt, wo ich es teilweise im Kopf habe - einigermaßen intuitiv ist. Die Lernkurve ist jedoch sehr steil, obwohl ich seit Jahren die Versionskontrolle verwende. Es leidet auch daran, zu ausdrucksstark zu sein - es unterstützt viele verschiedene Workflows und Entwicklungsmodelle, aber die einzige Anleitung zur "besten" Verwendung ist ein paar Seiten tief in einer Google-Suche, was es für einen Neuling auch schwierig macht, sie auszuwählen oben.

Das heißt, es ist möglich, dass es tatsächlich einfacher ist, von einer leeren Tafel mit Git aus zu starten - meine VCS-Erfahrung basiert ausschließlich auf der zentralen Versionskontrolle (CVS, SVN, Perforce ...), und ein Teil meiner (laufenden!) Schwierigkeiten mit Git war Verständnis der Auswirkungen des verteilten Modells. Ich habe kurz einen Blick auf andere DVCSes wie Bazaar und Mercurial geworfen und sie schienen etwas neuerfreundlicher zu sein.

Wie andere bereits gesagt haben, ist Subversion wahrscheinlich der einfachste Weg, sich an die Denkweise der Versionskontrolle zu gewöhnen und praktische Erfahrungen mit den Vorteilen von VCS zu sammeln (Rollback, Verzweigungen, gemeinsame Entwicklung, einfachere Codeüberprüfung usw.).

Oh, und fang nicht mit CVS an. Es ist immer noch in der Praxis und hat Vorteile, aber meiner Meinung nach hat es zu viele historische Macken und Implementierungsprobleme (nicht-atomare Commits!), Um eine gute Möglichkeit zum Lernen zu sein.

Quelle
Marcus Lee
Translate

Meine Stimme geht an Subversion. Es ist sehr leistungsfähig, aber einfach zu bedienen und verfügt über einige großartige Tools wieTortoiseSVN.

Aber wie andere vor mir gesagt haben, fangen Sie einfach an, es zu benutzen. Die Quellcodeverwaltung ist ein wichtiger Bestandteil des Softwareentwicklungsprozesses. Kein "ernstes" Softwareprojekt sollte ohne es sein.

Quelle
Edwina Lee
Translate

Bei meinem derzeitigen Job verwendete mein Vorgänger keinerlei Versionskontrolle. Es gibt nur Berge von Ordnern an mindestens drei verschiedenen Orten, an denen er alle seine Projekte aufbewahrt hat. Von jedem zufälligen Projektordner kann erwartet werden, dass er mindestens einen Ordnernamen "Projekt (ALT)" und einen mit dem Namen "Projekt" findet.

Mit der Versionskontrolle müssen Sie niemals Kopien von "sicheren" Builds erstellen. Sie müssen sich nicht wirklich Sorgen machen, dass Ihre IDE die Datei, an der Sie arbeiten, beschädigt (ich sehe Sie an, REALBasic 5.5), da es so einfach ist, Ihre Arbeit jeden Tag festzuschreiben (Lesen: Speichern).

Unnötig zu erwähnen, dass ich die Versionskontrolle am Tag nachdem ich herausgefunden habe, dass sie existiert, installiert habe.

TortoiseSVN macht das Festschreiben in der Datenbank so einfach wie das Klicken mit der rechten Maustaste auf einen Ordner.

Quelle
Yehudi Lee
Translate

Probieren Sie es auch ausvisuelle svnfür Ihren Server, wenn Sie Befehlszeilenarbeiten vermeiden möchten.

Quelle
Brook Lee
Translate

Wenn Sie unter Mac OSX arbeiten, habe ich festgestellt, dass http://www.versionsapp.com/"> Versionen ein unglaubliches (kostenloses) GUI-Frontend für SVN sind.

Quelle
Ruby Lee
Translate

Git ist der Subversion überlegen, aber es ist ein bisschen auf dem neuesten Stand.

Ich würde sagen, wenn Sie gerade erst anfangen, springen Sie auf die Kante; Richten Sie ein kostenloses Konto ein @http://github.com

Sie haben vor Ort Lehrmaterial zum Einrichten und Verwenden von Git.

Quelle
Payne Lee
Translate

Warte nicht. Wählen Sie eine aus und machen Sie mit. Alle Systeme haben ihre Vor- und Nachteile. Ihre Stromversorgung könnte ausfallen, Ihr Computer wird gestohlen oder Sie vergessen, eine größere Änderung rückgängig zu machen, und Ihr gesamter Code wird gebraten, während Sie darauf warten, wer als Sieger hervorgeht.

Quelle
Brady Lee
Translate

Es ist nicht so schwierig, zwischen Versionskontrollsystemen zu wechseln. Wie andere bereits erwähnt haben, ist es wichtig, so schnell wie möglich mit der Verwendung zu beginnen. Die Vorteile der Verwendung der Quellcodeverwaltung gegenüber der Nichtverwendung der Quellcodeverwaltung überwiegen bei weitem die unterschiedlichen Vorteile zwischen verschiedenen Arten der Quellcodeverwaltung.

Denken Sie daran, dass Sie unabhängig von der verwendeten Versionsverwaltungsversion immer eine Brute-Force-Konvertierung auf ein anderes System durchführen können, indem Sie die Dateien von Ihrem alten System auf die Festplatte legen und diese Rohdateien dann in das neue System importieren.

Darüber hinaus ist es als Softwareentwickler sehr, sehr wichtig, mit den Grundlagen der Quellcodeverwaltung vertraut zu sein.

Quelle
Bernice Lee
Translate

Verwenden Sie TortoiseSVN (version.app auf Mac). Einfach installieren und loslegen. Wenn Sie einen Ort zum Hosten Ihres Codes benötigen, schauen Sie sich anhttp://beanstalkapp.com/

Quelle
Jerome Lee
Translate

SubVersion ist die beste Wahl für Sie, wie Karl Seguin betonte, wäre der Wechsel zu einem anderen Versionierungssystem kein Problem. Auch SVN hat sehr doof Einfach zu verwendende GUIs auf der Client-Seite (TortoiseSVN).

http://www.snee.com/bobdc.blog/2007/08/getting_started_with_subversio.html http://dojo.jot.com/WikiHome/Getting%20Started%20With%20Subversion

Quelle
Eden Lee
Translate

Wenn Sie sich für Subversion entscheiden und Ihren eigenen SVN-Server hosten möchten, gibt es einen sehr schönen und einfachen Windows-basierten Server namens VisualSVN-Server. Es verbirgt die Komplexität des Einrichtens eines Apache-Servers. Sie gehen einfach weiter. Die Benutzerkonfiguration wird mit einer webUI anstelle einer Konfiguration durchgeführt

http://www.visualsvn.com/server/

Die Verwendung einer öffentlich zugänglichen Bohnenstange ist wahrscheinlich einfacher, aber einige Leute möchten aus Gründen der Geschwindigkeit oder Sicherheit ihre eigenen Repositories haben

Quelle
Molly Lee
Translate

Als ich mich entschied, ein Code-Versionierungssystem zu verwenden, sah ich mich nach guten Tutorials für den Einstieg um, fand aber keine, die mir helfen könnten.

Also habe ich einfach den SVN-Server und Tortoise SVN für den Client installiert und bin in das Deepend eingetaucht, und ich lerne nicht, wie man es auf dem Weg benutzt.

Quelle
Gemma Lee
Translate

Beginnen Sie mit der Verwendung von SVN für Ihre eigentliche Arbeit, aber nehmen Sie sich Zeit, um mit Git und / oder Mercurial herumzuspielen. SVN ist für die Produktion einigermaßen stabil, aber irgendwann werden Sie vor einem Szenario stehen, in dem Sie es tun werdenbrauchenein verteiltes SCM, zu welchem Zeitpunkt Sie ordnungsgemäß bewaffnet sind und die neuen Systeme ausgereift genug sind.

Quelle
Omar Lee
Translate

Ja, SVN für die Präferenz, es sei denn, Sie benötigen wirklich die besonderen Funktionen von git. SVN ist schwer genug; Es klingt so, als wäre es komplizierter, mit Git zu leben. Sie können svn von Leuten wie gehostet werdenBohnenstange- Ich würde es wirklich empfehlen, es sei denn, Sie haben interne Linux-Leute. Dinge können schrecklich leicht schief gehen und es ist schön, jemanden zu haben, dessen Aufgabe es ist, das Problem zu beheben.

Es gibt eine ausgezeichneteLernprogrammüber die Revisionskontrolle von Eric Sink, die es wert ist, gelesen zu werden, egal welches System Sie verwenden.

Quelle
Stan Lee
Translate

superjoe30 schreibt:

Verwandte Frage (möglicherweise können Antworten auch bearbeitet werden, um diese Frage zu beantworten):

Was ist mit der Quellcodeverwaltung auf Ihrem eigenen Computer, wenn Sie der einzige Programmierer sind? Ist >> diese gute Praxis? Gibt es verwandte Tipps oder Tricks?

Ich benutze SVN für alle meine persönlichen Projekte. Ich begann mit dem Ausführen von svn auf meinem Heimcomputer, migrierte aber schließlich zu Dreamhost. Ihre Hosting-Pakete, die Subversion enthalten, sind ziemlich vernünftig.

Quelle
Translate

Wenn auf einer Windows-Box eine schnelle und schmutzige Lösung CVSNT ist. Einfach zu bedienen, einfach einrichten und funktioniert sehr gut.

Ich selbst bevorzuge SVN, aber dies ist eine gute für den schnellen Gebrauch.

Quelle
Susan Lee
Translate

Ich würde SVN definitiv CVS vorziehen, schon allein deshalb, weil Leute, die die Quellcodeverwaltung mit CVS gelernt haben, dazu neigen, "zu verwenden"svn delete" dann "svn add" Anstatt von "svn move". Das macht es schwieriger, alle vorherigen Revisionen einer bestimmten Datei zu finden. Und Sie können jederzeit auf git-svn upgraden. Ich persönlich denke, es ist einfacher zu lernen als hg, aber wirklich dasMainGrund für die Verwendung von SVN ist, dass es weitgehend zum De-facto-Versionskontrollsystem von Open Source Software geworden ist.

Wenn Sie jemals vorhaben zu lernen / zu verwendenDEs ist fast obligatorisch, auf die Repositorys von Drittanbietern zuzugreifen, wie zDSource.

Quelle
Natividad Lee
Translate

@ superjoe30 Ja, absolut. Sobald Sie die Versionskontrolle verwenden, kehren Sie nie mehr zurück. Ich benutze es für alles, sogar für meinen "Home" -Ordner.

@Orion Edwards Subversion benötigt keinen Server. Sie können direkt auf ein lokales Repository zugreifen (natürlich über einen Client), und es ist kein Serverprozess beteiligt.

Quelle
Herman Lee
Translate

Verwenden Sie einfach TortoiseSVN, und Sie können auch ohne Kenntnis der tatsächlichen Subversion-Befehle leben ... Aber das ist schlecht. Glücklicherweise wird es immer eine „großartige Gelegenheit“ geben, sie auswendig zu lernen - wenn Ihr unbezahlbares Repository zum ersten Mal beschädigt wird.

Ja, das passiert.

Quelle
Simon Lee
Translate

Wie schon oft an anderer Stelle erwähnt, mach es einfach. Ich konnte mit Subversion unter Windows in kürzester Zeit von vorne anfangen, indem ich die Kurzanleitung im Red Book las. Nachdem ich TortoiseSVN auf das Repository gerichtet hatte, war ich im Geschäft. Es dauerte eine Weile, bis ich die Feinheiten erreicht hatte, aber es waren kleine Buckel, um darüber hinwegzukommen.

Ich würde vorschlagen, den Subversion-Dienst zu installieren, anstatt file: // URLs zu verwenden, aber das ist meistens eine persönliche Präferenz. Für ein auf Ihrem Entwicklungscomputer gespeichertes Repository funktioniert file: // einwandfrei.

Quelle
Juliet Lee
Translate

Aus persönlicher Erfahrung wäre SVN meine Empfehlung. Sie können sogar einen Dienst wie verwendenBohnenstangeDas bietet kostenlose Konten (mit Einschränkungen natürlich, aber ausreichend für jedes kleinere Projekt), um das Wasser zu testen. Aber wie andere gesagt haben, ist Git überlegen und es lohnt sich wahrscheinlich, einen Blick darauf zu werfen.

Quelle
Rod Lee
Translate

Ein wichtiger Tipp, um die Einrichtung eines SVN-Servers zu vereinfachen, ist die Verwendung einer virtuellen Appliance. Das heißt, eine virtuelle Maschine, auf der Subversion vorinstalliert und (meistens) vorkonfiguriert ist - so ziemlich eine Plug & Play-Sache. Du kannst es versuchenHier, HierundHieroder versuchen Sie einfach, Google auf "Subversion Virtual Appliance" zu durchsuchen.

Quelle