DAMASK_EICMD/documentation/Manual/include/svn_guide.tex

54 lines
2.8 KiB
TeX

\section{Internal access to the version-controlled sources}
% This section is copied from the msuwiki: http://msusrv4/msuwiki/Theory%20and%20Simulation/SVN
A prerequisite for you being able to access the version-controlled software is to
\begin{enumerate}
\item valid login
\item membership in the \verb|svn| group on server \verb|musvn1|
\end{enumerate}
Please ask either Berthold Becksch\"afer (-922) or Achim Kuhl (-923) to set up your permissions accordingly.
\subsection{Windows}
\subsubsection{Putty}
Get yourself \verb|PuTTY| and \verb|PuTTYgen| from \url{http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html}.
Generate a RSA (SSH2) 2048 bit strong key pair with \verb|PuTTYgen|.
Save the private part of the key to a secure location (\verb|My Documents| or such).
Copy the public part from the \verb|PuTTYgen| window, paste it into a text-editor and save.
Append the contents of that file to \verb|~/.ssh/authorized_keys| on any workstation you can log on to.
Create a profile in \verb|PuTTY| called "\verb|musvn1|" with host \verb|musvn1.mpie.de|, your standard "\verb|MPIE\\myName|" username and specify the above location of your private key file as means of authentication.
You should then be able to connect with this profile to \verb|musvn1| WITHOUT password authentication!
\subsubsection{Tortoise}
Install the subversion-client Tortoise from \url{http://tortoisesvn.net/downloads}.
Create a directory to hold the Material Point Model subroutine on your PC.
Right-click in this folder and select "SVN checkout" from the context menu.
Specify \url{svn+ssh://musvn1/home/svn/repos/cpfem} as the URL of the desired repository.
This will use the profile named "\verb|musvn1|" from \verb|PuTTY| and should hence not ask for any authentication from your end.
\subsection{Linux workstations}
\subsubsection{Key authentication}
If not already done, generate a 2048 bit RSA key pair using
\begin{lstlisting}[language=bash]
ssh-keygen -t rsa -b 2048
\end{lstlisting}
and go for the standard options offered.
This will create "\verb|id_rsa|" (private key) and "\verb|id_rsa.pub|" (public key) within your \verb|~/.ssh| folder.
Append the public key to the list of known keys
\begin{lstlisting}[language=bash]
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
\end{lstlisting}
and try logging into another workstation with
\begin{lstlisting}[language=bash]
ssh msuwsX
\end{lstlisting}
(exchange X with $1\dots 13$).
It should \emph{not} require password authentication.
\subsubsection{Checkout}
Create a directory to hold the subversion-controlled Material Point Model routine and change into this.
Issue the command
\begin{lstlisting}[language=bash]
svn co svn+ssh://MPIE\\yourName@musvn1/home/svn/repos/cpfem
\end{lstlisting}
to copy the repository content to the current working directory.