284 lines
No EOL
14 KiB
HTML
284 lines
No EOL
14 KiB
HTML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
|
|
|
|
|
<link rel="shortcut icon" type="image/x-icon" href="/Scratch/img/favicon.ico" />
|
|
<link rel="stylesheet" type="text/css" href="/Scratch/assets/css/main.css" />
|
|
<link rel="stylesheet" type="text/css" href="/Scratch/css/twilight.css" />
|
|
<link rel="stylesheet" type="text/css" href="/Scratch/css/idc.css" />
|
|
<link rel="alternate" type="application/rss+xml" title="RSS" href="http://feeds.feedburner.com/yannespositocomfr"/>
|
|
|
|
<link rel="alternate" lang="fr" xml:lang="fr" title="Git pour les nuls" type="text/html" hreflang="fr" href="/Scratch/fr/blog/2009-11-12-Git-for-n00b/c-est-parti-pour-l-aventure/" />
|
|
<link rel="alternate" lang="en" xml:lang="en" title="Git for n00b" type="text/html" hreflang="en" href="/Scratch/en/blog/2009-11-12-Git-for-n00b/c-est-parti-pour-l-aventure/" />
|
|
<script type="text/javascript" src="/Scratch/js/jquery-1.3.1.min.js"></script>
|
|
<script type="text/javascript" src="/Scratch/js/jquery.cookie.js"></script>
|
|
<script type="text/javascript" src="/Scratch/js/index.js"></script>
|
|
|
|
<title>Git pour les nuls</title>
|
|
</head>
|
|
<body lang="fr">
|
|
<script type="text/javascript">// <![CDATA[
|
|
document.write('<div id="blackpage"><img src="/Scratch/img/loading.gif" alt="Chargement en cours..."/></div>');
|
|
// ]]>
|
|
</script>
|
|
|
|
<div id="content">
|
|
|
|
<div id="choix">
|
|
<div class="return"><a href="#entete">↓ Menu ↓</a></div>
|
|
<div id="choixlang">
|
|
<a href="/Scratch/en/blog/2009-11-12-Git-for-n00b/c-est-parti-pour-l-aventure/" onclick="setLanguage('en')">in English</a>
|
|
</div>
|
|
</div>
|
|
<img src="/Scratch/img/presentation.png" alt="Presentation drawing"/>
|
|
<div id="titre">
|
|
<h1>
|
|
Git pour les nuls
|
|
</h1>
|
|
|
|
<h2>
|
|
Utiliser git avec quelques commandes simples
|
|
</h2>
|
|
|
|
</div>
|
|
|
|
<div class="flush"></div>
|
|
|
|
|
|
|
|
<div id="sousliens"><ul><li><a href="/Scratch/fr/blog/2009-11-12-Git-for-n00b/">la conlusion pour commencer</a></li><li><a href="/Scratch/fr/blog/2009-11-12-Git-for-n00b/Git-pour-quoi-faire/">Git pour quoi faire ?</a></li><li><a href="/Scratch/fr/blog/2009-11-12-Git-for-n00b/conf-et-install/">Avant l'utilisation, la configuration</a></li><li><span class="active" title="You're here.">Utiliser git avec quelques commandes simples</span></li><li><a href="/Scratch/fr/blog/2009-11-12-Git-for-n00b/comprendre/">Comprendre</a></li><li><a href="/Scratch/fr/blog/2009-11-12-Git-for-n00b/commandes-avancees/">Liste de commandes</a></li></ul></div>
|
|
|
|
<div class="flush"></div>
|
|
<div id="afterheader">
|
|
<div class="corps">
|
|
<h1 class="first" id="et-cest-parti-">Et c’est parti !</h1>
|
|
|
|
<p>Voici une parmi de nombreuses autres façon d’utiliser <a href="http://git-scm.org" title="Git">Git</a>. Cette méthode est nécessaire et suffisante pour travailler seul ou en collaboration sur un projet commun. Cependant, on peut faire beaucoup mieux avec <a href="http://git-scm.org" title="Git">Git</a> que ce <em>workflow</em> (en langage anglo-saxon).</p>
|
|
|
|
<h2 id="utilisation-basique">Utilisation basique</h2>
|
|
|
|
<p>La façon immédiate de travailler avec <a href="http://git-scm.org" title="Git">Git</a> :</p>
|
|
|
|
<ul>
|
|
<li>récupérer les modifications des autres <span class="black"><code>git pull</code></span></li>
|
|
<li>voir les détails de ces modifications <span class="black"><code>git log</code></span></li>
|
|
<li>Plusieurs fois:
|
|
<ul>
|
|
<li><em>Faire une modification atomique</em></li>
|
|
<li>verifier le details de ses modifications <span class="black"><code>git status</code></span> et <span class="black"><code>git diff</code></span></li>
|
|
<li>indiquer si nécessaire que de nouveaux fichiers doivent être <em>versionnés</em> <span class="black"><code>git add [file]</code></span></li>
|
|
<li>enregistrer ses modifications <br /><span class="black"><code>git commit -a -m "message"</code></span></li>
|
|
<li>envoyer ses modifications aux autres <span class="black"><code>git push</code></span> (refaire un <code>git pull</code> si le push renvoie une erreur).</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
|
|
<p>Voilà, avec ces quelques commandes vous pouvez utiliser <a href="http://git-scm.org" title="Git">Git</a> sur un projet avec d’autres personnes. Même si c’est suffisant, il faut quand même connaître une chose avant de se lancer ; la gestion des <em>conflits</em>.</p>
|
|
|
|
<h3 id="gestion-des-conflits">Gestion des conflits</h3>
|
|
|
|
<p>Les conflits peuvent survenir lorsque vous modifiez les même lignes de codes sur le même fichier d’une autre branche que vous <em>mergez</em>. Ça peut sembler un peu intimidant, mais avec <a href="http://git-scm.org" title="Git">Git</a> ce genre de chose est très facile a régler.</p>
|
|
|
|
<h4 id="exemple">exemple</h4>
|
|
|
|
<p>Vous partez du fichier suivant : </p>
|
|
|
|
<div style="width: 18em; margin-left: auto; margin-right: auto">
|
|
<pre class="twilight">
|
|
Zoot
|
|
</pre>
|
|
</div>
|
|
|
|
<p>et vous modifiez une ligne</p>
|
|
|
|
<div style="width: 18em; margin-left: auto; margin-right: auto">
|
|
<pre class="twilight">
|
|
Zoot <span class="Constant"><strong>the pure</strong></span>
|
|
</pre>
|
|
</div>
|
|
|
|
<p>sauf que pendant ce temps, un autre utilisateur a aussi modifié cette ligne et a fait un <code>push</code> de sa modification. </p>
|
|
|
|
<div style="width: 18em; margin-left: auto; margin-right: auto">
|
|
<pre class="twilight">
|
|
Zoot<span class="StringConstant"><strong>, just Zoot</strong></span>
|
|
</pre>
|
|
</div>
|
|
|
|
<p>Maintenant quand vous lancez la commande</p>
|
|
|
|
<div>
|
|
<pre class="twilight">
|
|
$ git pull
|
|
remote: Counting objects: 5, <span class="Keyword">done</span>.
|
|
remote: Total 3 (delta 0), reused 0 (delta 0)
|
|
Unpacking objects: 100% (3/3), <span class="Keyword">done</span>.
|
|
From /home/e640846/tmp/conflictTest
|
|
d3ea395..2dc7ffb master -<span class="Keyword">></span> origin/master
|
|
Auto-merging foo
|
|
CONFLICT (content): Merge conflict <span class="Keyword">in</span> foo
|
|
Automatic merge failed<span class="Keyword">;</span> fix conflicts and <span class="Keyword">then</span> commit the result.
|
|
</pre>
|
|
</div>
|
|
|
|
<p>Notre fichier <code>foo</code> contient alors : </p>
|
|
|
|
<div>
|
|
<pre class="twilight">
|
|
<<<<<<< HEAD:foo
|
|
Zoot <span class="Constant"><strong>the pure</strong></span>
|
|
=======
|
|
<span>Zoot<span class="StringConstant"><strong>, just Zoot</strong></span></span>
|
|
>>>>>>> 2dc7ffb0f186a407a1814d1a62684342cd54e7d6:foo
|
|
</pre>
|
|
</div>
|
|
|
|
<h4 id="rsolution-du-conflit">Résolution du conflit</h4>
|
|
|
|
<p>Régler le conflit, il suffit d’éditer le fichier, par exemple en écrivant :</p>
|
|
|
|
<div style="width: 18em; margin-left: auto; margin-right: auto">
|
|
<pre class="twilight">
|
|
Zoot <span class="Constant"><strong>the not so pure</strong></span>
|
|
</pre>
|
|
</div>
|
|
|
|
<p>et de ‘commiter’ tout simplement : </p>
|
|
|
|
<div>
|
|
<pre class="twilight">
|
|
git commit -a -m <span class="String"><span class="String">"</span>conflict resolved<span class="String">"</span></span>
|
|
</pre>
|
|
</div>
|
|
|
|
<p>Maintenant vous êtes fin prêt pour utiliser <a href="http://git-scm.org" title="Git">Git</a>.
|
|
Sauf que <a href="http://git-scm.org" title="Git">Git</a>, c’est un outil qui permet de faire beaucoup plus que juste ça. Alors nous allons maintenant voir des façon d’utiliser git qui étaient avant lui interdite d’utilisation pour les autres CVS.</p>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="navigation">
|
|
<div class="navigationprev"><a href="/Scratch/fr/blog/2009-11-12-Git-for-n00b/conf-et-install/"><span class="nicer">«</span> précédent</a></div>
|
|
<div class="navigationnext"><a href="/Scratch/fr/blog/2009-11-12-Git-for-n00b/comprendre/">suivant <span class="nicer">»</span></a></div>
|
|
</div>
|
|
<div class="flush"></div>
|
|
|
|
|
|
<div id="choixrss">
|
|
<a id="rss" href="http://feeds.feedburner.com/yannespositocomfr">
|
|
s'abonner
|
|
</a>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(document).ready(function(){
|
|
$('#comment').hide();
|
|
$('#clickcomment').click(showComments);
|
|
});
|
|
function showComments() {
|
|
$('#comment').show();
|
|
$('#clickcomment').fadeOut();
|
|
}
|
|
document.write('<div id="clickcomment">Commentaires</div>');
|
|
</script>
|
|
<div class="flush"></div>
|
|
<div class="corps" id="comment">
|
|
<h2 class="first">commentaires</h2>
|
|
<noscript>
|
|
|
|
</noscript>
|
|
|
|
<script type="text/javascript">
|
|
var idcomments_acct = 'a307f0044511ff1b5cfca573fc0a52e7';
|
|
var idcomments_post_id = '/Scratch/fr/blog/2009-11-12-Git-for-n00b/';
|
|
var idcomments_post_url = 'http://yannesposito.com/Scratch/fr/blog/2009-11-12-Git-for-n00b/';
|
|
</script>
|
|
<span id="IDCommentsPostTitle" style="display:none"></span>
|
|
<script type='text/javascript' src='/Scratch/js/genericCommentWrapperV2.js'></script>
|
|
|
|
</div>
|
|
|
|
<div id="entete" class="corps_spaced">
|
|
<div id="liens">
|
|
<ul><li><a href="/Scratch/fr/">Accueil</a></li>
|
|
<li><a href="/Scratch/fr/blog/">Blog</a></li>
|
|
<li><a href="/Scratch/fr/softwares/">Softwares</a></li>
|
|
<li><a href="/Scratch/fr/about/">À propos</a></li></ul>
|
|
</div>
|
|
<div class="flush"></div>
|
|
<hr/>
|
|
<div id="next_before_articles">
|
|
<div id="previous_articles">
|
|
articles précédents
|
|
|
|
<div class="previous_article">
|
|
<a href="/Scratch/fr/blog/2009-10-30-How-to-handle-evil-IE/"><span class="nicer">«</span> Une CSS pour IE seulement</a>
|
|
</div>
|
|
|
|
|
|
<div class="previous_article">
|
|
<a href="/Scratch/fr/blog/2009-10-28-custom-website-synchronisation-with-mobileme--2-/"><span class="nicer">«</span> Synchronisation avec mobileme (2)</a>
|
|
</div>
|
|
|
|
|
|
<div class="previous_article">
|
|
<a href="/Scratch/fr/blog/2009-10-Wait-to-hide-a-menu-in-jQuery/"><span class="nicer">«</span> Un menu qui attends avant de se cacher</a>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<div id="next_articles">
|
|
articles suivants
|
|
|
|
<div class="next_article">
|
|
<a href="/Scratch/fr/blog/2009-12-06-iphone-call-filter/">Filtrage d'appel avec l'iPhone <span class="nicer">»</span></a>
|
|
</div>
|
|
|
|
|
|
<div class="next_article">
|
|
<a href="/Scratch/fr/blog/2009-12-14-Git-vs--Bzr/">Git ou Bazaar ? <span class="nicer">»</span></a>
|
|
</div>
|
|
|
|
|
|
<div class="next_article">
|
|
<a href="/Scratch/fr/blog/2010-01-04-Change-default-shell-on-Mac-OS-X/">Changer le shell par défaut sous Mac OS X <span class="nicer">»</span></a>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<div class="flush"></div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div id="bottom">
|
|
<div>
|
|
<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/deed.fr">Droits de reproduction ©, Yann Esposito</a>
|
|
</div>
|
|
<div id="lastmod">
|
|
Écrit le : 12/11/2009
|
|
modifié le : 09/05/2010
|
|
</div>
|
|
<div>
|
|
Site entièrement réalisé avec
|
|
<a href="http://www.vim.org">Vim</a>
|
|
et
|
|
<a href="http://nanoc.stoneship.org">nanoc</a>
|
|
</div>
|
|
<div>
|
|
<a href="/Scratch/fr/validation/">Validation</a>
|
|
<a href="http://validator.w3.org/check?uri=referer"> [xhtml] </a>
|
|
.
|
|
<a href="http://jigsaw.w3.org/css-validator/check/referer?profile=css3"> [css] </a>
|
|
.
|
|
<a href="http://validator.w3.org/feed/check.cgi?url=http%3A//yannesposito.com/Scratch/fr/blog/feed/feed.xml">[rss]</a>
|
|
</div>
|
|
</div>
|
|
<div class="clear"></div>
|
|
</div>
|
|
</body>
|
|
</html> |