checkoutmanager macht bzr / hg / git / svn Checkout an mehreren Stellen nach einer Konfigurationsdatei.
Entwickler-Kommentare
Der Vorteil: Sie einen Befehl, mit dem Sie all Ihre Arbeitskopien zu aktualisieren haben. Und mit dem Sie eine Liste der unbestätigten Änderungen an ist. Und Sie können Ihre gesamte Kasse Struktur auf einer neuen Maschine wieder aufzubauen nur durch Kopieren der Konfigurationsdatei (das war eigentlich der Zweck baue ich es: Ich musste Laptops ändern, wenn ich eingeschaltet Arbeitsplätze ...).
Hinweis: Getestet habe ich es nur auf OS X und Linux, so dass keinerlei Garantien für Windows. Bei Änderungen erforderlich, werden sie wahrscheinlich gering sein. Daher begrüße ich Bug-Reports und Patches.
Generische Nutzung
Was ich tue, in der Regel jeden Morgen, wenn ich zur Arbeit ist checkoutmanager up. Dieser packt die neuesten Versionen aller meiner Kassen vom Server (n). So ein svn up für meine Subversion Kassen, ein hg Pull -u für mercurial und so weiter.
Von Zeit zu Zeit werde ich einen checkoutmanager st tun, um zu zeigen, wenn ich einige geschriebenen Dateien bekam herumliegen. Sehr praktisch, wenn Sie in verschiedenen Verzeichnissen den ganzen Tag gearbeitet habe: es verhindert, dass Sie vergessen, dass einer Bugfix für eine ganze Woche zu überprüfen.
Ein neues Projekt heißt, ich hinzufügen, eine Zeile, meine Config-Datei und führen checkoutmanager co.
Checkoutmanager können Sie Ihre Kassen über mehrere Verzeichnisse verteilen. Es ist nicht möglich, Versionskontrollsysteme pro Verzeichnis, aber. Als Beispiel habe ich eine ~ / buildout / Verzeichnis mit meinem großen svn Website-Projekte gibt, überprüft hat. Und ein Verzeichnis mit meiner svn Arbeit Python-Bibliotheken. Und ein ~ / hg / dir mit meinem mercurial Projekte. Und ich habe den Kassen von mehreren Konfigurations Verzeichnisse in meinem Home-Verzeichnis, wie beispielsweise ~ / .emacs.d, ~ / .subversion und so weiter. Funktioniert prima.
Befehle
Verfügbare Befehle:
vorhanden
& Nbsp; Drucken, ob Kassen vorhanden oder nicht vorhanden sind
nach oben
& Nbsp; Schnappen aktuelle Version vom Server.
st
& Nbsp; Print Status von Dateien in den Kassen
Zusammenarbeit
& Nbsp; Schnappen fehlenden Kassen vom Server
fehlt
& Nbsp; Print-Verzeichnisse, die aus der Konfigurationsdatei fehlen
Ausgabeverzeichnis Benennung
Wenn Sie nicht über ein Ausgabeverzeichnis Namen für Ihre Kasse url, es dauert nur den letzten Teil. Eine Ausnahme: Subversion. Er ist intelligent es:
& Nbsp; * https: // xxx / yyy / product / Leitung wird "Produkt" statt "Stamm".
& Nbsp; * https: // xxx / yyy / product / branches / Experiment wird "product_experiment" anstelle von "Experiment"
Wenn Sie etwas anderes möchten, geben Sie einfach einen Verzeichnisnamen (durch Leerzeichen getrennt) in der Konfigurationsdatei.
Config-Datei
Beispiel-Konfigurationsdatei:
# Beispiel-Konfigurationsdatei. Verschiedene Abschnitte pro Basis Lage und Ausführung
# Steuerung. Aufteilung alles ganz über dem Platz in verschiedenen
# Verzeichnisse ist in Ordnung.
[Rezepte]
# Buildout Rezepte ich arbeite.
vcs = svn
basedir = ~ / svn / Rezepte
Kassen =
& Nbsp; svn: // svn / blablabla / trunk
& Nbsp; svn: // svn / eine andere / trunk differentname
& Nbsp; http: // host / yetanother / trunk
& Nbsp; https: // Host / yetanother / branches / reinout-fix
[Dotfolders]
# Ordner, die am Ende als gepunktete configfolders in der Wurzel.
vcs = bzr
basedir = ~
Kassen =
& Nbsp; lp: emacsconfig / trunk .emacs.d
& Nbsp; sftp: // somwhere / subversion / trunk .subversion
Was ist neu in dieser Pressemitteilung:
- Der Verzicht auf die Beispiel-Konfigurationsdatei als Testkonfigurationsdatei nicht mehr. Das bedeutet, es gibt eine viel schöner und nützlicher Beispielkonfigurationsdatei jetzt.
- (Dank Craig Blaszczyk für seine Pull-Anforderung, die die Grundlage dafür war!)
Was ist neu in Version 1.12:
- Für bzr, die & quot; aus & quot; Befehl wird mit dem Exit-Code, anstatt die Befehlsausgabe jetzt. Das ist sicherer und bequem. Fix von Jendrik Seipp, danke!
Was ist neu in Version 1.11:
- Lassen Sie mehr als ein vcs in einem Verzeichnis. Das war schon möglich, aber jetzt bekannt, die Sie nicht mehr benötigen, um alle Kassen der teilnehmenden vcs in der Optionsliste zu ignorieren. Auch Gegenstände, die in einem Abschnitt ignoriert werden nun auch in anderen Abschnitten für das gleiche Verzeichnis ignoriert. Behebt # 11. [Maurits]
Was ist neu in Version 1.10:
- Verwenden --mine-only-Option zu bzr fehlt nur zeigen unsere ausgehChange beim Laufen checkoutmanager die & quot; aus & quot; Befehl für bzr.
- Kopieren Probe CFG-Datei, wenn es nicht und nicht nur was auf die Kopie vorhanden sind. Fixes # 12.
- Hinzugefügt versteckten Befehl info. Sollte nur für Subversion nützlich, wenn Ihre svn Programm aktualisiert ist und Ihr Betriebssystem müssen Sie svn Zugriff auf Ihre gespeicherten Anmeldeinformationen wieder zu geben, für jedes Repository. [Maurits]
Was ist neu in Version 1.9:
- hinzugekommen Upgrade-Befehl, Ihre Subversion-Kassen-Upgrades auf die neue 1,7 Layout der .svn Verzeichnis. [Maurits]
Was ist neu in der Version 1.8:
- git Push --dry-run jetzt zu erkennen, nicht -yet gedrängt ausgehende Veränderungen mit checkoutmanager aus. Fixes # 9 (von Maurits van Rees berichtete).
Was ist neu in der Version 1.7:
- Hinzugefügt --configfile Option
- . Nützlich, wenn Sie checkoutmanager verwenden, um den Kassen für etwas anderes als die normale Entwicklungsprojekte verwalten möchten. In der Praxis: Ich möchte es für eine "sdistmaker ', die mit git funktioniert verwenden .
Was ist neu in der Version 1.6:
- Vollständige Lösung für # 7: checkoutmanager nicht auf zu stoppen der erste Fehler, fährt jedoch. Und es meldet alle Fehler danach. Das hilft, wenn nur eine von Ihren svn / hg / was auch immer-Server ausgefallen ist. Der Rest wird einfach weiterarbeiten,
- Partial Fix für # 7:. Svn up läuft mit --non-interactive an, damit Konflikte Fehler Fehler werden anstatt ziemlich still wartet interaktive Eingabe, die nie kommen wird berichtet,
Was ist neu in der Version 1.5:
- Mit Ausnahme CommandError, e statt außer CommandError als e für python2.4-Kompatibilität.
Anforderungen :
- Python
Kommentare nicht gefunden