Compare commits
2 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
21c77ccd43 | |
|
|
1e875d2627 |
|
|
@ -34,7 +34,7 @@
|
||||||
\section{Prérequis}
|
\section{Prérequis}
|
||||||
|
|
||||||
\begin{frame}[fragile]
|
\begin{frame}[fragile]
|
||||||
\frametitle{Prerequis}
|
\frametitle{Prérequis}
|
||||||
Prérequis pour suivre ce cours:
|
Prérequis pour suivre ce cours:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Savoir lire la signature d'une commande \verb#command -a [-b] [-c | -d] --long-arg PARAM1 PARAMS2...#
|
\item Savoir lire la signature d'une commande \verb#command -a [-b] [-c | -d] --long-arg PARAM1 PARAMS2...#
|
||||||
|
|
@ -44,7 +44,7 @@ Prérequis pour suivre ce cours:
|
||||||
|
|
||||||
\section{Présentation de git}
|
\section{Présentation de git}
|
||||||
\begin{frame}
|
\begin{frame}
|
||||||
\frametitle{C'est quoi git}
|
\frametitle{Qu'est-ce que c'est?}
|
||||||
\begin{columns}[c]
|
\begin{columns}[c]
|
||||||
\column{0.5\textwidth}
|
\column{0.5\textwidth}
|
||||||
\begin{block}{}
|
\begin{block}{}
|
||||||
|
|
@ -63,12 +63,12 @@ Prérequis pour suivre ce cours:
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}
|
\begin{frame}
|
||||||
\frametitle{Ça permet de faire quoi}
|
\frametitle{Ça permet de faire quoi?}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Ne pas perdre son travail
|
\item Ne pas perdre son travail
|
||||||
\item Pouvoir inspecter des versions spécifiques de son travail
|
\item Pouvoir inspecter des versions spécifiques de son travail
|
||||||
\item Travailler à plusieurs
|
\item Travailler à plusieurs
|
||||||
\item Pouvoir donner la faute d'un bug à un collègue (on sait qui a codé quoi)
|
\item Pouvoir rejeter la faute d'un bug sur un collègue (on sait qui a codé quoi)
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\vspace{2\baselineskip}
|
\vspace{2\baselineskip}
|
||||||
|
|
@ -99,12 +99,12 @@ Prérequis pour suivre ce cours:
|
||||||
\item Une date
|
\item Une date
|
||||||
\item Un auteur
|
\item Un auteur
|
||||||
\item \textbf{Un message}: il peut être sur plusieurs lignes!
|
\item \textbf{Un message}: il peut être sur plusieurs lignes!
|
||||||
\item \textbf{Un pointeur vers sont parent}
|
\item \textbf{Un pointeur vers son parent}
|
||||||
\item \textbf{Un hash unique} basé sur tout ça (plus ou moins).
|
\item \textbf{Un hash unique} basé sur tout ça (plus ou moins).
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\begin{alertblock}{}
|
\begin{alertblock}{}
|
||||||
Les commit doivent raconter une histoire!
|
Les commits doivent raconter une histoire!
|
||||||
\end{alertblock}
|
\end{alertblock}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
|
|
@ -144,8 +144,8 @@ Prérequis pour suivre ce cours:
|
||||||
\frametitle{Ça sert à quoi?}
|
\frametitle{Ça sert à quoi?}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Travailler à plusieurs.
|
\item Travailler à plusieurs.
|
||||||
\item Faire plusieurs choses au même temps (nouvelle fonctionnalité, correction de bugs, ...).
|
\item Faire plusieurs choses en même temps (nouvelle fonctionnalité, correction de bugs, ...).
|
||||||
\item Essayer des nouvelles choses en parallèle sans impacter le projet: modifications indépendantes sur une même base.
|
\item Essayer de nouvelles choses en parallèle sans impacter le projet: modifications indépendantes sur une même base.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\vspace{2\baselineskip}
|
\vspace{2\baselineskip}
|
||||||
|
|
@ -204,7 +204,7 @@ Prérequis pour suivre ce cours:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Git affiche un message d'erreur en cas de conflit
|
\item Git affiche un message d'erreur en cas de conflit
|
||||||
\item Les conflits sont clairement délimités dans les fichiers à l'aide de chevrons
|
\item Les conflits sont clairement délimités dans les fichiers à l'aide de chevrons
|
||||||
\item Git présente les deux versions du bout de code et demande à l'humain de choisir la version finale (en modifiant le code et supprimant les chevrons)
|
\item Git présente les deux versions du bout de code et demande à l'humain de choisir la version finale (en modifiant le code et en supprimant les chevrons)
|
||||||
\item Il est aussi possible d'abandonner le merge
|
\item Il est aussi possible d'abandonner le merge
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
|
@ -287,20 +287,20 @@ Prérequis pour suivre ce cours:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Tout ce qui est sur le dépôt distant est commun.
|
\item Tout ce qui est sur le dépôt distant est commun.
|
||||||
\item Il ne faut modifier rien qui puisse être atteint à partir d'un commit présent sur le dépôt distant.
|
\item Il ne faut rien modifier qui puisse être atteint à partir d'un commit présent sur le dépôt distant.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\subsection{Les commandes}
|
\subsection{Les commandes}
|
||||||
\begin{frame}[fragile]
|
\begin{frame}[fragile]
|
||||||
\frametitle{Les commande des remotes}
|
\frametitle{Les commandes des remotes}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Mettre à jour la copie locale de la branche remote (commande non-destructive): \verb|git fetch|
|
\item Mettre à jour la copie locale de la branche remote (commande non-destructive): \verb|git fetch|
|
||||||
\item Récupère les modifications de la branche remote et les ajoute dans la branche courante: \verb#git pull [ --merge | --rebase ]#
|
\item Récupérer les modifications de la branche remote et les ajoute dans la branche courante: \verb#git pull [ --merge | --rebase ]#
|
||||||
\item Pousse les modifications de la branche courante sur le remote: \verb|git push|.
|
\item Pousser les modifications de la branche courante sur le remote: \verb|git push|.
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Il faut avoir fait un pull avant
|
\item Il faut avoir fait un pull avant
|
||||||
\item Dans le cas que la branche remote n'existe pas (elle sera crée): \verb|git push -u origin NOM|
|
\item Dans le cas où la branche remote n'existe pas (elle sera créée): \verb|git push -u origin NOM|
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
@ -339,16 +339,17 @@ Prérequis pour suivre ce cours:
|
||||||
\end{columns}
|
\end{columns}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}[fragile]{Merge vs Rebase}
|
\begin{frame}[fragile]
|
||||||
|
\frametitle{Merge vs Rebase}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Merge: la résolution de tous les conflits est dans le commit de merge. Rebase: chaque commit est modifié pour résoudre ses conflits
|
\item Merge: la résolution de tous les conflits est dans le commit de merge. Rebase: chaque commit est modifié pour résoudre ses conflits
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Rebase modifie directement les conflits (comme s'il y en avait pas eu) plutôt que d'ajouter un commit de ``solution''
|
\item Rebase modifie directement les conflits (comme s'il n'y en avait pas eu) plutôt que d'ajouter un commit de ``solution''
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\item Rebase: ``triche'' sur la façon de raconter l'historique
|
\item Rebase: ``triche'' sur la façon de raconter l'historique
|
||||||
\item Rebase: historique propre
|
\item Rebase: historique propre
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Le seuls merge présents dans l'historique c'est ceux qui signifient quelque chose (e.g. une nouvelle fonctionnalité ajoutée)
|
\item Le seuls merge présents dans l'historique sont ceux qui signifient quelque chose (e.g. une nouvelle fonctionnalité ajoutée)
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
|
@ -387,18 +388,19 @@ Prérequis pour suivre ce cours:
|
||||||
\verb|git reset --hard COMMIT_HASH| permet de bouger la tête de la branche sur un commit particulier, \textbf{en écrasant toutes les modifications faites depuis}.
|
\verb|git reset --hard COMMIT_HASH| permet de bouger la tête de la branche sur un commit particulier, \textbf{en écrasant toutes les modifications faites depuis}.
|
||||||
|
|
||||||
\begin{block}{}
|
\begin{block}{}
|
||||||
\verb|git reset --hard HEAD| supprime toutes les modifications faites depuis le dernier commit (modifications pas enregistrées dans un commit).
|
\verb|git reset --hard HEAD| supprime toutes les modifications faites depuis le dernier commit (modifications non enregistrées dans un commit).
|
||||||
\end{block}
|
\end{block}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\section{Conclusion}
|
\section{Conclusion}
|
||||||
|
|
||||||
\begin{frame}{Git bash}
|
\begin{frame}{Utilitaires}
|
||||||
Affiche des informations sur les dépôt git dans le terminal.
|
\begin{itemize}
|
||||||
|
\item Git bash: affichage d'informations sur le dépôt dans le terminal \url{https://github.com/magicmonty/bash-git-prompt}
|
||||||
|
\item gitk: Outil graphique
|
||||||
|
\item git-gui: Un autre outil graphique
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
\vspace{2\baselineskip}
|
|
||||||
|
|
||||||
\url{https://github.com/magicmonty/bash-git-prompt}
|
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}[fragile]{Pas vu dans ce cours}
|
\begin{frame}[fragile]{Pas vu dans ce cours}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue