Wenn Sie von CVS kommen, müssen Sie sich darüber im Klaren sein, dass Sie nicht mehr die Verzeichnisse wenn Sie eine Zweigstelle einrichten.
Es gibt keine "klebrige Markierung" (die nur auf eine Datei angewendet werden kann) und keine "Verzweigungsmarkierung" mehr.
Branch und Tags sind zwei verschiedene Objekte in Git, und sie gelten immer für die todo Repo.
Sie müssen (mit SVN diesmal) Ihr Repository nicht mehr explizit mit strukturieren:
branches
myFirstBranch
myProject
mySubDirs
mySecondBranch
...
tags
myFirstTag
myProject
mySubDirs
mySecondTag
...
Diese Struktur ergibt sich aus der Tatsache, dass CVS ein Überarbeitungssystem und nicht ein Versionssystem (siehe Versionskontrolle vs. Revisionskontrolle? ).
Das bedeutet, dass Zweige durch Tags für CVS und Verzeichniskopien für SVN emuliert werden.
Ihre Frage macht Sinn, wenn Sie daran gewöhnt sind, einen Tag auszuwählen, und anfangen, darin zu arbeiten .
Was man nicht tun sollte ;)
Ein Tag soll eine unveränderlich Inhalte, die nur für den Zugriff auf sie verwendet werden, mit der Garantie, jedes Mal denselben Inhalt zu erhalten.
In Git ist der Verlauf der Revisionen eine Reihe von Übertragungen, die einen Graphen bilden.
Ein Zweig ist ein Pfad in diesem Graphen
x--x--x--x--x # one branch
\
--y----y # another branch
1.1
^
|
# a tag pointing to a commit
- Wenn Sie ein Tag auschecken, müssen Sie eine Verzweigung erstellen, um damit arbeiten zu können.
- Wenn Sie einen Zweig auschecken, sehen Sie direkt den letzten Commit it('HEAD') dieses Zweigs.
Ver Jakub Narebskis Antwort für alle technischen Einzelheiten, aber ehrlich gesagt, brauchen Sie zu diesem Zeitpunkt (noch) nicht alle Details ;)
Der wichtigste Punkt ist: Ein Tag ist ein einfacher Verweis auf eine Übertragung, dessen Inhalt Sie niemals ändern können. Sie brauchen einen Zweig.
In Ihrem Fall arbeitet jeder Entwickler an einer bestimmten Funktion:
- sollten ihren eigenen Zweig in ihrem jeweiligen Repository erstellen
- Verfolgung von Zweigen aus den Repositories ihrer Kollegen (die an der gleichen Funktion arbeiten)
- ziehen/schieben, um Ihre Arbeit mit Gleichaltrigen zu teilen.
Anstatt die Zweige Ihrer Kollegen direkt zu verfolgen, könnten Sie nur den Zweig eines "offiziellen" zentralen Repositorys verfolgen, in das jeder seine Arbeit einspeist, um die Arbeit aller für diese bestimmte Funktion zu integrieren und zu teilen.