66 lines
No EOL
2.7 KiB
TeX
66 lines
No EOL
2.7 KiB
TeX
% master: git_auf_dem_ssh-server_einrichten.tex
|
|
% Git auf dem SSH-Server einrichten v0.1
|
|
% 2017-01-09 (Rx)
|
|
|
|
\section{Git auf dem SSH-Server einrichten}
|
|
%------------------------------------------
|
|
|
|
Einrichtung des SSH-Zugangs auf dem Server mit der Authorized-Keys-Methode zur
|
|
Authentifizierung der Benutzer.
|
|
|
|
\begin{verbatim}
|
|
sudo adduser git Benutzer git anlegen
|
|
su git Rechte von User git erlagen
|
|
cd ins Home ~ Verzeichnis des Users wechseln
|
|
mkdir .ssh Verzeichnis .ssh anlegen
|
|
\end{verbatim}
|
|
|
|
- öffentliche SSH-Schlüssel der Entwickler zu der Authorized-Keys-Datei
|
|
des Benutzers git hinzuzufügen.
|
|
\begin{verbatim}
|
|
cat /tmp/id_rsa.user1.pub > ~/.ssh/authorized_keys
|
|
authorized_keys erstellen und User1 einfügen
|
|
cat /tmp/id_rsa.user2.pub >> ~/.ssh/authorized_keys
|
|
User2 einfügen
|
|
cat /tmp/id_rsa.user3.pub >> ~/.ssh/authorized_keys
|
|
User3 einfügen
|
|
\end{verbatim}
|
|
|
|
- Leeren Ordner anlegen und mit der Option --bare ein Repository ohne ein
|
|
Arbeitsverzeichnis erzeugen.
|
|
\begin{verbatim}
|
|
cd /srv in den Ordner srv wechseln
|
|
mkdir git git Ordner anlegen
|
|
cd git in den Ordner git wechseln
|
|
mkdir project.git project.git Ordner anlegen
|
|
cd project.git in den Ordner project.git wechseln
|
|
git --bare init Repository ohne ein Arbeitsverzeichnis erzeugen
|
|
\end{verbatim}
|
|
|
|
- Die erste Version des Projektes in das Repository hochladen
|
|
\begin{verbatim}
|
|
cd project in das Projekt wechseln
|
|
git init Projekt Repository herstellen
|
|
git add . alle Dateien um Index hinzufügen
|
|
git commit -m 'initial commit' Index zum Working Tree hinzufügen
|
|
git remote add origin git@gitserver:/srv/git/project.git
|
|
Server hinzufügen
|
|
git push origin master Commits und Referenzen auf den Server hochladen
|
|
\end{verbatim}
|
|
|
|
- Repository klonen und Änderungen hochladen
|
|
\begin{verbatim}
|
|
git clone git@gitserver:/srv/git/project.git Repository klonen
|
|
cd project ins Projekt wechseln
|
|
vim README Projekt bearbeiten
|
|
git commit -am 'fix for the README file' Änderung speichern
|
|
git push origin master Änderung hochladen
|
|
\end{verbatim}
|
|
|
|
- Git-Zugang absichen
|
|
\begin{verbatim}
|
|
/etc/passwd
|
|
git:x:1000:1000::/home/git:/bin/sh /bin/sh auf
|
|
git:x:1000:1000::/home/git:/usr/bin/git-shell
|
|
/usr/bin/git-shell ändern
|
|
\end{verbatim} |