-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlab_16.html
More file actions
196 lines (180 loc) · 11.5 KB
/
lab_16.html
File metadata and controls
196 lines (180 loc) · 11.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
<!DOCTYPE html>
<html lang="en">
<head>
<title>Lab 16 - Git Immersion - Brought to you by EdgeCase</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta charset="utf-8">
<link rel="stylesheet" media="screen" href="reset.css">
<link rel="stylesheet" media="screen" href="screen.css">
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-1142510-7']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="html5.js"></script>
<script type="text/javascript" src="jquery.hotkeys.js"></script>
<script type="text/javascript" src="UI.js"></script>
</head>
<body data-lab-id="16">
<div id="pager">
<ul>
<li class="arrow next">
<a href="lab_17.html#main_content">Suivant</a>
</li>
<li class="arrow previous">
<a href="lab_15.html#main_content">Précédent</a>
</li>
<li class="index_button"><a href="#">Index</a></li>
</ul>
</div>
<header id="header">
<a href="index.html" id="home_link">Git Immersion</a>
<a href="http://edgecase.com" target="_blank" id="edgecase_link">Brought to you by EdgeCase</a>
<nav>
<ul>
<li class="arrow next">
<a href="lab_17.html#main_content">Suivant</a>
</li>
<li class="arrow previous">
<a href="lab_15.html#main_content">Précédent</a>
</li>
<li class="index_button"><a href="#">Index</a></li>
</ul>
</nav>
<div id="bookmark">Bookmark</div>
</header>
<div id="main_content">
<h1 class="lab_title"><em>lab 16</em> Annuler les changements déjà commités</h1>
<h3>Buts</h3>
<ul>
<li>Apprendre comment annuler revenir sur les changements qui ont déjà<br />
été commités sur le dépôt local.</li>
</ul>
<h2>Annuler des commits <em>01</em></h2>
<p>Parfois vous réalisez qu’un changement que vous avez déjà commité n’était pas correct et vous souhaitez annuler ce commit. Il y a plusieurs façons de gérer ce problème, et la manière dont nous allons faire cela dans cette partie du tutoriel est toujours sûre.</p>
<p>Essentiellement nous allons annuler le commit en créant un nouveau commit qui inverse les changements non voulus.</p>
<h2>Changer le fichier et le commiter. <em>02</em></h2>
<p>Changer le fichier <code>bonjour.rb</code> de la manière suivante.</p>
<h4>File: <em>bonjour.rb</em></h4>
<pre class="file"># C'est un changement non voulu mais déjà commité
name = ARGV.first || "Monde"
puts "Bonjour, #{name}!"
</pre>
<h4>Execute:</h4>
<pre class="instructions">git add bonjour.rb
git commit -m "Oups, nous ne voulions pas ce commit"</pre>
<h2>Créer un commit de retour en arrière <em>03</em></h2>
<p>Pour annuler un changement commité, nous avons besoin de générer un commit qui annule les changements introduits par notre commit non voulu.</p>
<h4>Execute:</h4>
<pre class="instructions">git revert HEAD</pre>
<p>Cela va vous ouvrir votre éditeur de texte. Vous pouvez éditer le message de commit par défaut ou le laisser tel quel. Sauver et fermer le fichier. Vous devriez voir …</p>
<h4>Output:</h4>
<pre class="sample">$ git revert HEAD --no-edit
[master 412434e] Revert "Oups, nous ne voulions pas ce commit"
1 file changed, 1 insertion(+), 1 deletion(-)
</pre>
<p>Comme nous étions en train d’annuler le dernier commit que nous avions fait, nous avons été capable d’utiliser <code>HEAD</code> comme argument pour annuler. Nous pouvons annuler n’importe quel commit de manière arbitraire plus ancien dans l’historique en spécifiant simplement la valeur de son hash.</p>
<p class="note"><strong>Note:</strong> Le <code>--no-edit</code> dans la sortie peut être ignoré. Il était nécessaire de générer la sortie sans ouvrir l’éditeur.</p>
<h2>Vérifier le log <em>04</em></h2>
<p>Vérifier que le log montre à la fois les commits non désirés et ceux de correction des commits non désirés dans notre répertoire.</p>
<h4>Execute:</h4>
<pre class="instructions">git hist</pre>
<h4>Output:</h4>
<pre class="sample">$ git hist
* 412434e 2014-02-21 | Revert "Oups, nous ne voulions pas ce commit" (HEAD, master) [Jim Weirich]
* 83f893e 2014-02-21 | Oups, nous ne voulions pas ce commit [Jim Weirich]
* a9c6007 2014-02-21 | Ajout d'un commentaire (v1) [Jim Weirich]
* 221243e 2014-02-21 | Ajouter une valeur par défaut (v1-beta) [Jim Weirich]
* 80fc666 2014-02-21 | Using ARGV [Jim Weirich]
* 834ca4f 2014-02-21 | Mon premier commit [Jim Weirich]</pre>
<p>Cette technique fonctionnera avec n’importe quel commit (même si vous allez peut être devoir résoudre des conflits). C’est sûr pour être utilisé même sur les branches qui sont partagées sur des dépôts distants.</p>
<h2>Quoi de plus <em>05</em></h2>
<p>Maintenant, allons regarder une technique qui peut être utilisée pour enlever les commits les plus récents de l’historique du dépôt.</p>
</div>
<div id="index">
<h1>Table des matières</h1>
<div id="show_bookmarks"></div>
<div id="no_bookmarks"></div>
<ul>
<li data-lab-id="0"><a href="index.html"><span> </span>Couverture de page d'accueil</a></li>
<li data-lab-id="1"><a href="lab_01.html"><span>1:</span> Configuration</a></li>
<li data-lab-id="2"><a href="lab_02.html"><span>2:</span> Configuration supplémentaire</a></li>
<li data-lab-id="3"><a href="lab_03.html"><span>3:</span> Créer un projet</a></li>
<li data-lab-id="4"><a href="lab_04.html"><span>4:</span> Vérifier le status</a></li>
<li data-lab-id="5"><a href="lab_05.html"><span>5:</span> Effectuer des changements</a></li>
<li data-lab-id="6"><a href="lab_06.html"><span>6:</span> Déclarer les changements</a></li>
<li data-lab-id="7"><a href="lab_07.html"><span>7:</span> Déclarer et commiter</a></li>
<li data-lab-id="8"><a href="lab_08.html"><span>8:</span> Commiter les changements</a></li>
<li data-lab-id="9"><a href="lab_09.html"><span>9:</span> Changements, pas fichiers</a></li>
<li data-lab-id="10"><a href="lab_10.html"><span>10:</span> Historique</a></li>
<li data-lab-id="11"><a href="lab_11.html"><span>11:</span> Alias</a></li>
<li data-lab-id="12"><a href="lab_12.html"><span>12:</span> Obtenir de vieille versions</a></li>
<li data-lab-id="13"><a href="lab_13.html"><span>13:</span> Tagger des versions</a></li>
<li data-lab-id="14"><a href="lab_14.html"><span>14:</span> Annuler les changements locaux (avant les déclarations)</a></li>
<li data-lab-id="15"><a href="lab_15.html"><span>15:</span> Annuler les déclarations de fichiers changés (avant de commiter)</a></li>
<li data-lab-id="16"><a href="lab_16.html"><span>16:</span> Annuler les changements déjà commités</a></li>
<li data-lab-id="17"><a href="lab_17.html"><span>17:</span> Enlever des commits d'une branche</a></li>
<li data-lab-id="18"><a href="lab_18.html"><span>18:</span> Enlever le tag oups</a></li>
<li data-lab-id="19"><a href="lab_19.html"><span>19:</span> Amender les commits</a></li>
<li data-lab-id="20"><a href="lab_20.html"><span>20:</span> Déplacer les fichiers</a></li>
<li data-lab-id="21"><a href="lab_21.html"><span>21:</span> Plus de structuration</a></li>
<li data-lab-id="22"><a href="lab_22.html"><span>22:</span> Fonctionnement interne de Git: le répertoire .git</a></li>
<li data-lab-id="23"><a href="lab_23.html"><span>23:</span> Fonctionnement interne de Git: travailler directement avec les objets Git</a></li>
<li data-lab-id="24"><a href="lab_24.html"><span>24:</span> Créer une branche</a></li>
<li data-lab-id="25"><a href="lab_25.html"><span>25:</span> Naviguer dans les branches</a></li>
<li data-lab-id="26"><a href="lab_26.html"><span>26:</span> Changements dans Master</a></li>
<li data-lab-id="27"><a href="lab_27.html"><span>27:</span> Visualiser les branches qui divergent</a></li>
<li data-lab-id="28"><a href="lab_28.html"><span>28:</span> Fusion</a></li>
<li data-lab-id="29"><a href="lab_29.html"><span>29:</span> Création d'un conflit</a></li>
<li data-lab-id="30"><a href="lab_30.html"><span>30:</span> Résolution des conflits</a></li>
<li data-lab-id="31"><a href="lab_31.html"><span>31:</span> Rebasing VS Merging</a></li>
<li data-lab-id="32"><a href="lab_32.html"><span>32:</span> Resetting the Greet Branch</a></li>
<li data-lab-id="33"><a href="lab_33.html"><span>33:</span> Resetting the Master Branch</a></li>
<li data-lab-id="34"><a href="lab_34.html"><span>34:</span> Rebasing</a></li>
<li data-lab-id="35"><a href="lab_35.html"><span>35:</span> Fusionner dans la branche master</a></li>
<li data-lab-id="36"><a href="lab_36.html"><span>36:</span> Dépôts multiples</a></li>
<li data-lab-id="37"><a href="lab_37.html"><span>37:</span> Cloner des dépôts</a></li>
<li data-lab-id="38"><a href="lab_38.html"><span>38:</span> Examiner le dépôt cloné</a></li>
<li data-lab-id="39"><a href="lab_39.html"><span>39:</span> Qu'est ce qu'origin?</a></li>
<li data-lab-id="40"><a href="lab_40.html"><span>40:</span> Branches distantes</a></li>
<li data-lab-id="41"><a href="lab_41.html"><span>41:</span> Changer le dépôt original</a></li>
<li data-lab-id="42"><a href="lab_42.html"><span>42:</span> Rapporter(fetch) les changements</a></li>
<li data-lab-id="43"><a href="lab_43.html"><span>43:</span> Fusionner les changements récupérés</a></li>
<li data-lab-id="44"><a href="lab_44.html"><span>44:</span> "Tirer" (pull) les changements</a></li>
<li data-lab-id="45"><a href="lab_45.html"><span>45:</span> Ajouter une branche pour le suivi</a></li>
<li data-lab-id="46"><a href="lab_46.html"><span>46:</span> Dépôts dit "nus" (bare)</a></li>
<li data-lab-id="47"><a href="lab_47.html"><span>47:</span> Ajouter un dépôt distant</a></li>
<li data-lab-id="48"><a href="lab_48.html"><span>48:</span> Envoyer un changement</a></li>
<li data-lab-id="49"><a href="lab_49.html"><span>49:</span> Récupérer les changements partagés</a></li>
<li data-lab-id="50"><a href="lab_50.html"><span>50:</span> Héberger vos dépôts Git</a></li>
<li data-lab-id="51"><a href="lab_51.html"><span>51:</span> Partager des dépôts</a></li>
<li data-lab-id="52"><a href="lab_52.html"><span>52:</span> Sujets avancés / futurs</a></li>
<li data-lab-id="53"><a href="lab_53.html"><span>53:</span> Merci</a></li>
</ul>
</div>
<footer id="footer">
<nav>
<ul>
<li class="arrow next">
<a href="lab_17.html#main_content">Suivant</a>
</li>
<li class="arrow previous">
<a href="lab_15.html#main_content">Précédent</a>
</li>
<li class="index_button"><a href="#">Index</a></li>
</ul>
</nav>
<a href="http://edgecase.com" target="_blank" id="edgecase_link_small">EdgeCase</a>
</footer>
</body>
</html>