Versionsmanagement-Tipps: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Codica (Diskussion | Beiträge) (→Git) |
Codica (Diskussion | Beiträge) |
||
Zeile 100: | Zeile 100: | ||
* Holen von Änderungen vom Server | * Holen von Änderungen vom Server | ||
git pull | git pull | ||
+ | |||
+ | === Zweige === | ||
+ | |||
+ | Einen Branch/Zweig erzeugt man am einfachsten so: | ||
+ | git checkout -b NEUERZWEIG | ||
+ | |||
+ | Zu einem anderen Zweig wechselt man mit | ||
+ | git checkout ZWEIG | ||
+ | |||
+ | Der Standard-Zweig nennt sich normalerweise <code>master</code> oder <code>main</code>. | ||
=== Git Merge === | === Git Merge === | ||
Siehe [https://git-scm.com/book/de/v1/Git-Branching-Einfaches-Branching-und-Merging Anleitung zum Einfachen Branching und Merging] | Siehe [https://git-scm.com/book/de/v1/Git-Branching-Einfaches-Branching-und-Merging Anleitung zum Einfachen Branching und Merging] | ||
+ | |||
+ | === Ändern des letzten commits === | ||
+ | |||
+ | Manchmal vergisst man eine Datei beim Commiten. Wenn es den letzten commit betrifft, ist die Fehlerbehebung einfach: | ||
+ | |||
+ | git add FEHLENDE_DATEI | ||
+ | git commit --amend --no-edit | ||
=== Weiteres zu Git === | === Weiteres zu Git === |
Version vom 3. September 2021, 18:58 Uhr
Siehe oldCt:Versionsmanagement-Tipps
Das Versionsmanagementsystem CVS wird nach und nach von Subversion (SVN) oder auch verteilten Systemen wie Mercurial abgelöst.
Subversion-Server
Folgende Schritte sind für einen einfachen Subversionserver mit einem Repository nötig:
Einrichten eines Repository
- Einrichten eines Repository auf dem Server mit Hilfe des Utility svnadmin:
svnadmin create myRepo
- Dadurch wird unterhalb des aktuellen Verzeichnisses ein neues Repository angelegt (im Prinzip eine Verzeichnisstruktur für SVN-Verwaltungsdaten und die eigentlichen Inhalte).
Zugriffsberechtigungen
- Editieren der Datei
conf/svnserve.conf
:password-db=passwordDatei
Name der Passwort-Dateirealm=AuthUmgebung
wird als Teilschlüssel zwischen Server und Client ausgetauschtanon-access=none
kein anonymer Zugriffauth-access=write
authentifizierte User können Lesen und Schreiben
- Erstellen der
passwordDatei
(im selben Verzeichnis wiesvnserve.conf
:
[users] user1=passwort1 user2=passwort2
Serverstart
- Starten des Servers mit
svnserve -d --foreground
- bzw. mit Angabe des Wurzelverzeichnisses:
svnserve -d --foreground -r /wurzelverzeichnis
- In der Firewall muss der betroffene Port freigegeben werden.
Automatischer Start bei Systemboot
- Anlegen eines speziellen Users für svnserve mit
useradd svnserve
- Erstellen einer Datei
/etc/init.d/svnserve.sh
mit folgendem Inhalt:
#! /bin/sh REPOS_DIR=/home/svnserve/repos start-stop-daemon --start --chuid svnserve --exec /usr/bin/svnserve -- -d -r $REPOS_DIRvs20067:
- Ausführbar machen (als root):
chmod +x /etc/init.d/svnserve.sh
- Installieren für die User-Runlevel:
update-rc.d dhSvnServe.sh defaults
- Siehe auch das automatische Starten von svnserve jedenfalls unter Debian
Subversion-Client
- Der Zugriff mittels des Clients
svn
erfolgt dann z.B. so:
svn --editor-cmd joe --username user1 --password passwort1 --import meinBestehendesArbeitsverzeichnis svn://IP-AdresseDesServers/myRepo
- Danach muss übrigens ein Checkout erfolgen.
Mercurial
Mercurial ist wie Git ein verteiltes Versionsverwaltungssystem.
- Mercurial: The Definitive Guide (Englisch) von Bryan O'Sullivan
- Zusammenarbeit zwischen Netbeans und Mercurial
Git
Git ist ein verteiltes Versionskontrollsystem.
Git Konfiguration
Es kann man auch als Server-Client-System einsetzen:
- Einrichten des GIT-Systems
git config --global user.name "Max Mustermann" git config --global user.email "muster@mann.de"
Einrichten eines Git-Repository
- Einrichten eines GIT-Repository auf einem Server server.de
cd ~ mkdir myproject git init touch README.txt git add . git commit -a -m "Erstversion" git checkout -b tmpBranch #Wechsel weg vom Master, sonst ist dieser für Remote-Schreibzugriffe gesperrt
- Einrichten eines GIT-Repository auf dem Client
git clone user@server.de:myproject/.git
Arbeiten im Projekt
- Hinzufügen von Dateien
git add . git commit -a -m "Kommentar" git push origin master
- Holen von Änderungen vom Server
git pull
Zweige
Einen Branch/Zweig erzeugt man am einfachsten so:
git checkout -b NEUERZWEIG
Zu einem anderen Zweig wechselt man mit
git checkout ZWEIG
Der Standard-Zweig nennt sich normalerweise master
oder main
.
Git Merge
Siehe Anleitung zum Einfachen Branching und Merging
Ändern des letzten commits
Manchmal vergisst man eine Datei beim Commiten. Wenn es den letzten commit betrifft, ist die Fehlerbehebung einfach:
git add FEHLENDE_DATEI git commit --amend --no-edit