Das Problem bei vorhandenen Versionskontrollsystemen ist nicht so sehr deren Komplexität. Es ist die Tatsache, dass es so viele Informationen gibt, dass es für Anfänger sehr schwierig sein kann, den Wald vor lauter Bäumen zu sehen (dh herauszufinden, was sie tun und nicht lernen müssen, wenn sie gerade erst anfangen ).
Dieser Beitrag konzentriert sich auf git
die Steuerung von Emacs mithilfe eines Add-On-Pakets mit dem Namen magit
. Ja , git
ist komplex, aber Sie müssen nicht viel lernen, um es für den von Ihnen beschriebenen Zweck produktiv einzusetzen.
Ich gehe davon aus, dass Sie git
installiert haben (wenn Sie dies nicht tun, holen Sie es sich hier ) und dass Sie Emacs überhaupt nicht verlassen möchten.
Installieren magit
magit
ist ein git
Front-End für Emacs. Es ist bei MELPA erhältlich und kann wie folgt installiert werden:
M-x package-install
RET magit
RET
Auf gut Glück , dass Sie nicht Melpa in Ihrer Konfiguration aktiviert haben, können Sie Anweisungen finden , wie Sie das hier .
Repository einrichten
Angenommen, Sie haben einen Ordner ~/writing
in Ihrem Ausgangsverzeichnis, der ein oder mehrere Dokumente enthält, die Sie der Versionskontrolle unterwerfen möchten.
- Öffnen Sie den Ordner in Dired: C-x d
~/writing
RET
- Öffne eine Shell: M-x
shell
RET
- Tippen
git init
und drücken RET.
Das ist es. Sie haben jetzt ein git
Repository. Es besteht keine Notwendigkeit, es irgendwo zu "registrieren". git
ist ein verteiltes Versionskontrollsystem; Es ist kein Remote-Server erforderlich, um Änderungen nachzuverfolgen.
Überprüfen Sie den Status Ihres Repositorys
- Wechseln Sie zurück zu dem Dired-Puffer, der die Dateien in Ihrem Repository auflistet.
- Tun M-x
magit-status
RET.
Sie können sich den Puffer als Ihr "Kontrollfeld" für die Arbeit mit Ihrem Repository vorstellen. Für ein neues Repository sieht es ungefähr so aus:
Sie können mit n( magit-goto-next-section
) und p( magit-goto-previous-section
) zwischen verschiedenen Abschnitten dieses Puffers navigieren .
Sie können den Puffer durch Drücken von g( magit-refresh
) aktualisieren .
Beachten Sie, dass Sie den Statuspuffer aus jeder Datei oder jedem Verzeichnis aufrufen können, die bzw. das zu dem Repository gehört, das Sie zuvor eingerichtet haben.
Dateien hinzufügen
Wie Sie auf dem Screenshot sehen können, befinden sich drei Dateien im Repository, die git
derzeit nicht verfolgt werden. Um zu sagen git
zu starten , eine Datei - Tracking, müssen Sie inszenieren es: Mit Punkt auf der Datei , die Sie hinzufügen möchten, drücken Sie s. Der Statuspuffer sieht dann so aus:
Festschreiben
Nachdem Sie eine oder mehrere Dateien gespeichert haben, können Sie sie festschreiben , indem Sie auf drücken c c. Dadurch wird ein Puffer angezeigt, der wie folgt aussieht:
Geben Sie oben Ihre Festschreibungsnachricht ein und drücken Sie C-c C-c, um die Festschreibung abzuschließen. (Zum Abbrechen drücken Sie C-c C-k.)
Der Statuspuffer sieht dann so aus:
Staging-Änderungen
Wenn Sie Änderungen an einer nachverfolgten Datei vornehmen, werden diese in einem separaten Abschnitt ("Nicht bereitgestellte Änderungen") im Statuspuffer aufgeführt:
Um die Änderungen zu überprüfen, die Sie an der Datei vorgenommen haben, navigieren Sie zu der Zeile mit der Aufschrift Modified file-1.txt
und drücken Sie TAB:
Um diese Änderungen vorzunehmen, drücken Sie s:
Anzeigen vergangener Commits
Zum Schluss können Sie, wenn Sie frühere Commits überprüfen möchten, die Taste drücken l l(das sind zwei L-Zeichen in Kleinbuchstaben):
Sie können wie gewohnt durch den Puffer navigieren, der mit nund angezeigt wird p. Magit zeigt die Änderungen, die mit den einzelnen in diesem Puffer aufgelisteten Commits verbunden sind, in einem separaten Fenster an.
Zusammenfassung
Aus der Schale:
git init
: git
Repository im aktuellen Verzeichnis initialisieren
Aus einer beliebigen Datei oder einem Verzeichnis, das einem git
Repository zugeordnet ist:
Aus dem Statuspuffer:
Das ist es. :)
git
undmagit
- github.com/magit/magit - da Sie bereits ein wenig damit herumgespielt haben. Sie sollten sich wahrscheinlich mit den Befehlszeilenoptionen vertraut machen, um besser zu verstehen, wasmagit
geschieht. Emacs ist nicht für Nicht-Programmierer, aber Sie haben lange genug um die Szene gewesen, nicht von ihm Angst - :) Sie auch spielen , um zu versuchen mit wünschen könnengist
: github.com/defunkt/gist.el