OSDN Git Service

Add pull and fetch document
[tortoisegit/TortoiseGitJp.git] / doc / source / en / TortoiseGit / tsvn_dug / dug_log.xml
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!DOCTYPE sect1 SYSTEM "../../../dtd/dblite.dtd">\r
3 <sect1 id="tsvn-dug-showlog">\r
4         <title>Revision Log Dialog</title>\r
5         <indexterm>\r
6                 <primary>log</primary>\r
7         </indexterm>\r
8         <indexterm>\r
9                 <primary>history</primary>\r
10         </indexterm>\r
11         <indexterm>\r
12                 <primary>commit messages</primary>\r
13         </indexterm>\r
14         <indexterm>\r
15                 <primary>log messages</primary>\r
16         </indexterm>\r
17         <?dbhh topicname="HIDD_LOGMESSAGE"?>\r
18         <para>\r
19                 For every change you make and commit, you should provide\r
20                 a log message for that change. That way you can later find out\r
21                 what changes you made and why, and you have a detailed log for\r
22                 your development process.\r
23         </para>\r
24         <para>\r
25                 The Revision Log Dialog retrieves all those log messages and shows them\r
26                 to you.\r
27                 The display is divided into 3 panes.\r
28                 <itemizedlist>\r
29                         <listitem>\r
30                                 <para>\r
31                                         The top pane shows a list of revisions where changes to the\r
32                                         file/folder have been committed. This summary includes the\r
33                                         date and time, the person who committed the revision and the\r
34                                         start of the log message.\r
35                                 </para>\r
36                                 <para>\r
37                                         Lines shown in bold indicate that that is HEAD commit.\r
38                                 </para>\r
39                         </listitem>\r
40                         <listitem>\r
41                                 <para>\r
42                                         The middle pane shows the full log message for the selected\r
43                                         revision.\r
44                                 </para>\r
45                         </listitem>\r
46                         <listitem>\r
47                                 <para>\r
48                                         The bottom pane shows a list of all files and folders that\r
49                                         were changed as part of the selected revision.\r
50                                 </para>\r
51                         </listitem>\r
52                 </itemizedlist>\r
53                 But it does much more than that - it provides context menu\r
54                 commands which you can use to get even more information about the\r
55                 project history.\r
56         </para>\r
57         <sect2 id="tsvn-dug-showlog-1">\r
58                 <title>Invoking the Revision Log Dialog</title>\r
59                 <para>\r
60                         <figure id="tsvn-dug-showlog-1-dia-1">\r
61                                 <title>The Revision Log Dialog</title>\r
62                                 <graphic fileref="../images/LogMessages.png"/>\r
63                         </figure>\r
64                         There are several places from where you can show the Log dialog:\r
65                         <itemizedlist>\r
66                                 <listitem>\r
67                                         <para>\r
68                                                 From the TortoiseGit context submenu\r
69                                         </para>\r
70                                 </listitem>\r
71                                 <!--\r
72                                 <listitem>\r
73                                         <para>\r
74                                                 From the property page\r
75                                         </para>\r
76                                 </listitem>\r
77                                 -->\r
78                                 <!--\r
79                                 <listitem>\r
80                                         <para>\r
81                                                 From the Progress dialog after an update\r
82                                                 has finished. Then the Log dialog only shows those revisions\r
83                                                 which were changed since your last update\r
84                                         </para>\r
85                                 </listitem>\r
86                                 -->\r
87                         </itemizedlist>\r
88                 </para>\r
89         </sect2>\r
90         <sect2 id="tsvn-dug-showlog-actions">\r
91                 <title>Revision Log Actions</title>\r
92                 <para>\r
93                         The top pane has an <guilabel>Actions</guilabel> column containing\r
94                         icons that summarize what has been done in that revision.\r
95                         There are four different icons, each shown in its own column.\r
96                 </para>\r
97                 <para>\r
98                         <graphic fileref="../images/ActionModifiedIcon.png"/>\r
99                         If a revision modified a file or directory, the\r
100                         <emphasis>modified</emphasis> icon is shown in the first column.\r
101                 </para>\r
102                 <para>\r
103                         <graphic fileref="../images/ActionAddedIcon.png"/>\r
104                         If a revision added a file or directory, the\r
105                         <emphasis>added</emphasis> icon is shown in the second column.\r
106                 </para>\r
107                 <para>\r
108                         <graphic fileref="../images/ActionDeletedIcon.png"/>\r
109                         If a revision deleted a file or directory, the\r
110                         <emphasis>deleted</emphasis> icon is shown in the third column.\r
111                 </para>\r
112                 <para>\r
113                         <graphic fileref="../images/ActionReplacedIcon.png"/>\r
114                         If a revision replaced(rename) a file, the\r
115                         <emphasis>replaced</emphasis> icon is shown in the fourth column.\r
116                 </para>\r
117         </sect2>\r
118         <sect2 id="tsvn-dug-showlog-2">\r
119                 <title>Getting Additional Information</title>\r
120                 <para>\r
121                         <figure id="tsvn-dug-showlog-2-dia-1">\r
122                                 <title>The Revision Log Dialog Top Pane with Context Menu</title>\r
123                                 <graphic fileref="../images/LogContextMenu.png"/>\r
124                         </figure>\r
125                         The top pane of the Log dialog has a context menu that allows you to\r
126                         access much more information. Some of these menu entries appear only\r
127                         when the log is shown for a file, and some only when the log is shown\r
128                         for a folder.\r
129                         <variablelist>\r
130                                 <varlistentry>\r
131                                         <term>Compare with working copy</term>\r
132                                         <listitem>\r
133                                                 <para>\r
134                                                         Compare the selected revision with your working copy.\r
135                                                         The default Diff-Tool is TortoiseMerge which\r
136                                                         is supplied with TortoiseGit.\r
137                                                         If the log dialog is for a folder, this will show you a list\r
138                                                         of changed files, and allow you to review the changes made\r
139                                                         to each file individually.\r
140                                                 </para>\r
141                                         </listitem>\r
142                                 </varlistentry>\r
143                                 <!--\r
144                                 <varlistentry>\r
145                                         <term>Compare and blame with working BASE</term>\r
146                                         <listitem>\r
147                                                 <para>\r
148                                                         Blame the selected revision, and the file in your working BASE\r
149                                                         and compare the blame reports using a visual diff tool.\r
150                                                         Read <xref linkend="tsvn-dug-blame-diffs"/> for more detail.\r
151                                                         (files only).\r
152                                                 </para>\r
153                                         </listitem>\r
154                                 </varlistentry>\r
155                                 -->\r
156                                 <varlistentry>\r
157                                         <term>Show changes as unified diff</term>\r
158                                         <listitem>\r
159                                                 <para>\r
160                                                         View the changes made in the selected revision as a\r
161                                                         Unified-Diff file (GNU patch format). This shows\r
162                                                         only the differences with a few lines of context. It\r
163                                                         is harder to read than a visual file compare, but will\r
164                                                         show all file changes together in a compact format.\r
165                                                 </para>\r
166                                         </listitem>\r
167                                 </varlistentry>\r
168                                 <varlistentry>\r
169                                         <term>Compare with previous revision</term>\r
170                                         <listitem>\r
171                                                 <para>\r
172                                                         Compare the selected revision with the previous revision.\r
173                                                         This works in a similar manner to comparing with your\r
174                                                         working copy.\r
175                                                         For folders this option will first show the changed files\r
176                                                         dialog allowing you to select files to compare.\r
177                                                 </para>\r
178                                         </listitem>\r
179                                 </varlistentry>\r
180                                 <!--\r
181                                 <varlistentry>\r
182                                         <term>Compare and blame with previous revision</term>\r
183                                         <listitem>\r
184                                                 <para>\r
185                                                         Show the changed files dialog allowing you to select files.\r
186                                                         Blame the selected revision, and the previous revision,\r
187                                                         and compare the results using a visual diff tool.\r
188                                                         (folders only).\r
189                                                 </para>\r
190                                         </listitem>\r
191                                 </varlistentry>\r
192                                 -->\r
193                                 <!--\r
194                                 <varlistentry>\r
195                                         <term>Save revision to...</term>\r
196                                         <listitem>\r
197                                                 <para>\r
198                                                         Save the selected revision to a file so you have an older\r
199                                                         version of that file. (files only).\r
200                                                 </para>\r
201                                         </listitem>\r
202                                 </varlistentry>\r
203                                 \r
204                                 <varlistentry>\r
205                                         <term>Open / Open with...</term>\r
206                                         <listitem>\r
207                                                 <para>\r
208                                                         Open the selected file, either with the default viewer for\r
209                                                         that file type, or with a program you choose. (files only).\r
210                                                 </para>\r
211                                         </listitem>\r
212                                 </varlistentry>\r
213                                 <varlistentry>\r
214                                         <term>Blame...</term>\r
215                                         <listitem>\r
216                                                 <para>\r
217                                                         Blame the file up to the selected revision. (files only).\r
218                                                 </para>\r
219                                         </listitem>\r
220                                 </varlistentry>\r
221         -->\r
222                                 <!--\r
223                                 <varlistentry>\r
224                                         <term>Browse repository</term>\r
225                                         <listitem>\r
226                                                 <para>\r
227                                                         Open the repository browser to examine the selected file or\r
228                                                         folder in the repository as it was at the selected revision.\r
229                                                 </para>\r
230                                         </listitem>\r
231                                 </varlistentry>\r
232                                 -->\r
233         <varlistentry>\r
234                                         <term>Reset (current branch) to this</term>\r
235                                         <listitem>\r
236                                                 <para>\r
237                                                         Reset current branch HEAD to selected commit. \r
238                                                         <!-- todo refer reset -->\r
239                                                 </para>\r
240                                         </listitem>\r
241                                 </varlistentry>\r
242           \r
243        <varlistentry>\r
244                                         <term>Switch\Checkout to revision</term>\r
245                                         <listitem>\r
246                                                 <para>\r
247                                                         Update your working copy to the selected revision.\r
248                                                         Useful if you want to have your working copy reflect\r
249                                                         a time in the past, or if there have been further commits to\r
250                                                         the repository and you want to update your working copy one\r
251                                                         step at a time. \r
252                                                 </para>\r
253                                         </listitem>\r
254                                 </varlistentry>\r
255             \r
256                                 <varlistentry>\r
257                                         <term>Create branch from revision</term>\r
258                                         <listitem>\r
259                                                 <para>\r
260                                                         Create a branch from a selected revision.\r
261                                                         This is useful e.g. \r
262                                                 </para>\r
263                                         </listitem>\r
264                                 </varlistentry>\r
265                                 <varlistentry>\r
266                                         <term>Create tag from revision</term>\r
267                                         <listitem>\r
268                                                 <para>\r
269                                                         Create a tag from a selected revision.\r
270                                                         This is useful e.g. \r
271                                                 </para>\r
272                                         </listitem>\r
273                                 </varlistentry>\r
274                                 \r
275                                 \r
276                                 <varlistentry>\r
277                                         <term>Rebase (current branch) to this</term>\r
278                                         <listitem>\r
279                                                 <para>\r
280                                                         Rebase current branch to selected commit. \r
281                                                         <!-- todo refer rebase -->\r
282                                                 </para>\r
283                                         </listitem>\r
284                                 </varlistentry>\r
285                                 <varlistentry>\r
286                                         <term>Cherry Pick this commit</term>\r
287                                         <listitem>\r
288                                                 <para>\r
289                                                         Cherry Pick this commit to current branch\r
290                                                         <!-- todo refer cherry pick -->\r
291                                                 </para>\r
292                                         </listitem>\r
293                                 </varlistentry>\r
294                                 <!--\r
295                                 <varlistentry>\r
296                                         <term>Revert changes from this revision</term>\r
297                                         <listitem>\r
298                                                 <para>\r
299                                                         Revert changes from which were made in the selected\r
300                                                         revision. The changes are reverted in your working copy so\r
301                                                         this operation does <emphasis>not</emphasis> affect the\r
302                                                         repository at all! Note that this will undo the changes\r
303                                                         made in that revision only. It does not replace your\r
304                                                         working copy with the entire file at the earlier revision.\r
305                                                         This is very useful for undoing an earlier change when\r
306                                                         other unrelated changes have been made since. If you have\r
307                                                         made local changes, this command will merge these changes\r
308                                                         into your working copy.\r
309                                                 </para>\r
310                                         </listitem>\r
311                                 </varlistentry>\r
312                                 -->\r
313                                 <!--\r
314                                 <varlistentry>\r
315                                         <term>Revert to this revision</term>\r
316                                         <listitem>\r
317                                                 <para>\r
318                                                         Revert to an earlier revision. If you have made several\r
319                                                         changes, and then decide that you really want to go back to\r
320                                                         how things were in revision N, this is the command you need.\r
321                                                         Again, the changes are reverted in your working copy so\r
322                                                         this operation does <emphasis>not</emphasis> affect the\r
323                                                         repository until you commit the changes. Note that this\r
324                                                         will undo <emphasis>all</emphasis> changes made after the\r
325                                                         selected revision, replacing the file/folder with the\r
326                                                         earlier version. If you have made local changes, this\r
327                                                         command will merge these changes into your working copy.\r
328                                                 </para>\r
329                                         </listitem>\r
330                                 </varlistentry>\r
331                                 -->\r
332                                 <!--\r
333                                 <varlistentry>\r
334                                         <term>Merge revision to...</term>\r
335                                         <listitem>\r
336                                                 <para>\r
337                                                         Merge the selected revision(s) into a different working copy.\r
338                                                         A folder selection dialog allows you to choose the working\r
339                                                         copy to merge into, but after that there is no confirmation\r
340                                                         dialog, nor any opportunity to try a test merge. It is a good\r
341                                                         idea to merge into an unmodified working copy so that you can\r
342                                                         revert the changes if it doesn't work out!\r
343                                                         This is a useful feature if you want to merge selected\r
344                                                         revisions from one branch to another.\r
345                                                 </para>\r
346                                         </listitem>\r
347                                 </varlistentry>\r
348                                 -->\r
349                                 <!--\r
350                                 <varlistentry>\r
351                                         <term>Checkout...</term>\r
352                                         <listitem>\r
353                                                 <para>\r
354                                                         Make a fresh checkout of the selected folder at the selected\r
355                                                         revision. This brings up a dialog for you to confirm the\r
356                                                         URL and revision, and select a location for the checkout.\r
357                                                 </para>\r
358                                         </listitem>\r
359                                 </varlistentry>\r
360                                 -->\r
361                                 <varlistentry>\r
362                                         <term>Export this version...</term>\r
363                                         <listitem>\r
364                                                 <para>\r
365                                                         Export the selected file/folder at the selected\r
366                                                         revision. This brings up a dialog for you to confirm the\r
367                                                         URL and revision, and select a location for the export.\r
368                                                 </para>\r
369                                         </listitem>\r
370                                 </varlistentry>\r
371                                 <!--\r
372                                 <varlistentry>\r
373                                         <term>Edit author / log message</term>\r
374                                         <listitem>\r
375                                                 <para>\r
376                                                         Edit the log message or author attached to a previous commit.\r
377                                                         Read <xref linkend="tsvn-dug-showlog-4"/> to find out\r
378                                                         how this works.\r
379                                                 </para>\r
380                                         </listitem>\r
381                                 </varlistentry>\r
382                                 -->\r
383                                 <!--\r
384                                 <varlistentry>\r
385                                         <term>Show revision properties</term>\r
386                                         <listitem>\r
387                                                 <para>\r
388                                                         View and edit any revision property, not just log message\r
389                                                         and author. Refer to <xref linkend="tsvn-dug-showlog-4"/>.\r
390                                                 </para>\r
391                                         </listitem>\r
392                                 </varlistentry>\r
393                                 -->\r
394                                 <varlistentry>\r
395                                         <term>Copy to clipboard</term>\r
396                                         <listitem>\r
397                                                 <para>\r
398                                                         Copy the log details of the selected revisions to the clipboard.\r
399                                                         This will copy the revision number, author, date, log message\r
400                                                         and the list of changed items for each revision.\r
401                                                 </para>\r
402                                         </listitem>\r
403                                 </varlistentry>\r
404                                 <varlistentry>\r
405                                         <term>Search log messages...</term>\r
406                                         <listitem>\r
407                                                 <para>\r
408                                                         Search log messages for the text you enter. This searches\r
409                                                         the log messages that you entered and also the action summaries\r
410                                                         created by Git (shown in the bottom pane). The search\r
411                                                         is not case sensitive.\r
412                                                 </para>\r
413                                         </listitem>\r
414                                 </varlistentry>\r
415         <varlistentry>\r
416                                         <term>Format Patch...</term>\r
417                                         <listitem>\r
418                                                 <para>\r
419                                                         Create Patchs from this commit.\r
420                                                 </para>\r
421                                         </listitem>\r
422                                 </varlistentry>\r
423                         </variablelist>\r
424                 </para>\r
425                 <para>\r
426                         <figure id="tsvn-dug-showlog-2-dia-1a">\r
427                                 <title>Top Pane Context Menu for 2 Selected Revisions</title>\r
428                                 <graphic fileref="../images/LogContextMenu1.png"/>\r
429                         </figure>\r
430                         If you select two revisions at once (using the usual\r
431                         <keycap>Ctrl</keycap>-modifier), the context menu changes and\r
432                         gives you fewer options:\r
433                         <variablelist>\r
434                                 <varlistentry>\r
435                                         <term>Compare revisions</term>\r
436                                         <listitem>\r
437                                                 <para>\r
438                                                         Compare the two selected revisions using a visual\r
439                                                         difference tool. The default Diff-Tool is TortoiseMerge\r
440                                                         which is supplied with TortoiseGit.\r
441                                                 </para>\r
442                                                 <!--\r
443                                                 <para>\r
444                                                         If you select this option for a folder, a further dialog pops\r
445                                                         up listing the changed files and offering you further\r
446                                                         diff options. Read more about the Compare Revisions\r
447                                                         dialog in <xref linkend="tsvn-dug-compare-revs"/>.\r
448                                                 </para>\r
449                                                 -->\r
450                                         </listitem>\r
451                                 </varlistentry>\r
452                                 <!--\r
453                                 <varlistentry>\r
454                                         <term>Blame revisions</term>\r
455                                         <listitem>\r
456                                                 <para>\r
457                                                         Blame the two revisions and compare the blame reports using\r
458                                                         a visual difference tool.\r
459                                                         Read <xref linkend="tsvn-dug-blame-diffs"/> for more detail.\r
460                                                 </para>\r
461                                         </listitem>\r
462                                 </varlistentry>\r
463                                 -->\r
464                                 <varlistentry>\r
465                                         <term>Show differences as unified diff</term>\r
466                                         <listitem>\r
467                                                 <para>\r
468                                                         View the differences between the two selected revisions\r
469                                                         as a Unified-Diff file. This works for files and folders.\r
470                                                 </para>\r
471                                         </listitem>\r
472                                 </varlistentry>\r
473         <varlistentry>\r
474           <term>Combine to one commit</term>\r
475           <listitem>\r
476             <para>\r
477               Combine continuous commits to one commit.\r
478             </para>\r
479           </listitem>\r
480         </varlistentry>\r
481         <varlistentry>\r
482                                         <term>Cherry Pick this version</term>\r
483                                         <listitem>\r
484                                                 <para>\r
485                                                         Cherry Pick Chosen Commits. \r
486                                                 </para>\r
487                                         </listitem>\r
488                                 </varlistentry>\r
489         <varlistentry>\r
490                                         <term>Fomat Patch...</term>\r
491                                         <listitem>\r
492                                                 <para>\r
493                                                         Create patchs between chosen two commits.\r
494                                                 </para>\r
495                                         </listitem>\r
496                                 </varlistentry>\r
497                                 <varlistentry>\r
498                                         <term>Copy to clipboard</term>\r
499                                         <listitem>\r
500                                                 <para>\r
501                                                         Copy log messages to clipboard as described above.\r
502                                                 </para>\r
503                                         </listitem>\r
504                                 </varlistentry>\r
505                                 <varlistentry>\r
506                                         <term>Search log messages...</term>\r
507                                         <listitem>\r
508                                                 <para>\r
509                                                         Search log messages as described above.\r
510                                                 </para>\r
511                                         </listitem>\r
512                                 </varlistentry>\r
513                         </variablelist>\r
514                 </para>\r
515                 \r
516                 <para>\r
517                         If you select two or more revisions (using the usual\r
518                         <keycap>Ctrl</keycap> or <keycap>Shift</keycap> modifiers),\r
519                         You can combine select commits to one commit. And cherry pick \r
520                         these commits to current branch.\r
521                 </para>\r
522                 <!--\r
523                 <para>\r
524                         You can also choose to merge the selected revisions to another\r
525                         working copy, as described above.\r
526                 </para>\r
527                 <para>\r
528                         If all selected revisions have the same author, you can edit\r
529                         the author of all those revisions in one go.\r
530                 </para>\r
531                 -->\r
532                 <para>\r
533                         <figure id="tsvn-dug-showlog-2-dia-2">\r
534                                 <title>The Log Dialog Bottom Pane with Context Menu</title>\r
535                                 <graphic fileref="../images/LogContextMenu2.png"/>\r
536                         </figure>\r
537                         The bottom pane of the Log dialog also has a context menu that allows you to\r
538                         <variablelist>\r
539                                 <!--\r
540                                 <varlistentry>\r
541                                         <term>Show changes</term>\r
542                                         <listitem>\r
543                                                 <para>\r
544                                                         Show changes made in the selected revision for the\r
545                                                         selected file. This context menu is only available for\r
546                                                         files shown as <emphasis>modified</emphasis>.\r
547                                                 </para>\r
548                                         </listitem>\r
549                                 </varlistentry> \r
550                                 <varlistentry>\r
551                                         <term>Blame changes</term>\r
552                                         <listitem>\r
553                                                 <para>\r
554                                                         Blame the selected revision and the previous revision for the\r
555                                                         selected file, and compare the blame reports\r
556                                                         using a visual diff tool.\r
557                                                         Read <xref linkend="tsvn-dug-blame-diffs"/> for more detail.\r
558                                                 </para>\r
559                                         </listitem>\r
560                                 </varlistentry>\r
561         -->\r
562        \r
563                                 <varlistentry>\r
564                                         <term>Show as unified diff</term>\r
565                                         <listitem>\r
566                                                 <para>\r
567                                                         Show file changes in unified diff format.\r
568                                                         This context menu is only available for\r
569                                                         files shown as <emphasis>modified</emphasis>.\r
570                                                 </para>\r
571                                         </listitem>\r
572                                 </varlistentry>\r
573                         \r
574                                 <varlistentry>\r
575                                         <term>Open / Open with...</term>\r
576                                         <listitem>\r
577                                                 <para>\r
578                                                         Open the selected file, either with the default viewer for\r
579                                                         that file type, or with a program you choose.\r
580                                                 </para>\r
581                                         </listitem>\r
582                                 </varlistentry>\r
583                                 <varlistentry>\r
584                                         <term>Blame...</term>\r
585                                         <listitem>\r
586                                                 <para>\r
587                                                         Opens the Blame dialog, allowing you to blame up to the\r
588                                                         selected revision.\r
589                                                 </para>\r
590                                         </listitem>\r
591                                 </varlistentry>\r
592                                 \r
593                                 <varlistentry>\r
594                                         <term>Revert changes to this revision</term>\r
595                                         <listitem>\r
596                                                 <para>\r
597                                                         Revert chosen file to this revision.\r
598                                                 </para>\r
599                                         </listitem>          \r
600                                 </varlistentry>\r
601         <varlistentry>\r
602           <term>Save revision to...</term>\r
603           <listitem>\r
604             <para>\r
605               Save the selected revision to a file so you\r
606               have an older version of that file.\r
607             </para>\r
608           </listitem>\r
609         </varlistentry>\r
610         \r
611         <varlistentry>\r
612           <term>Show log</term>\r
613           <listitem>\r
614             <para>\r
615               Show the revision log for the selected single file.\r
616             </para>\r
617           </listitem>\r
618         </varlistentry>\r
619         \r
620         <varlistentry>\r
621           <term>Compare with base</term>\r
622           <listitem>\r
623             <para>\r
624               Compare chosen file with base version.\r
625             </para>\r
626           </listitem>\r
627         </varlistentry>\r
628         \r
629         <varlistentry>\r
630           <term>Compare with working copy</term>\r
631           <listitem>\r
632             <para>\r
633               Compare chosen file with working copy.\r
634             </para>\r
635           </listitem>\r
636         </varlistentry>\r
637         \r
638         <varlistentry>\r
639           <term>View revision in Notepad2</term>\r
640           <listitem>\r
641             <para>\r
642               Show chosen file with notepad2 with chosen commit.\r
643             </para>\r
644           </listitem>\r
645         </varlistentry>\r
646         \r
647         <varlistentry>\r
648           <term>Explore to</term>\r
649           <listitem>\r
650             <para>\r
651               Open directory of file with Explore.\r
652             </para>\r
653           </listitem>\r
654         </varlistentry>\r
655         \r
656         <varlistentry>\r
657           <term>Copy paths to clipboard</term>\r
658           <listitem>\r
659             <para>\r
660               Copy paths to clipboard\r
661             </para>\r
662           </listitem>\r
663         </varlistentry>\r
664         \r
665         <varlistentry>\r
666           <term>Copy all information to clipboard</term>\r
667           <listitem>\r
668             <para>\r
669               Copy all information to clipboard, include version info.\r
670             </para>\r
671           </listitem>\r
672         </varlistentry>\r
673         \r
674         <!--\r
675                                 <varlistentry>\r
676                                         <term>Show properties</term>\r
677                                         <listitem>\r
678                                                 <para>\r
679                                                         View the Git properties for the selected item.\r
680                                                 </para>\r
681                                         </listitem>\r
682                                 </varlistentry>\r
683                                 -->\r
684                                 <!--\r
685                         \r
686                                 <varlistentry>\r
687                                         <term>Get merge logs</term>\r
688                                         <listitem>\r
689                                                 <para>\r
690                                                         Show the revision log for the selected single file,\r
691                                                         including merged changes. Find out more in\r
692                                                         <xref linkend="tsvn-dug-showlog-mergetrack"/>.\r
693                                                 </para>\r
694                                         </listitem>\r
695                                 </varlistentry>\r
696                         \r
697                                 -->\r
698                         </variablelist>\r
699                 </para>\r
700                 <tip>\r
701                         <para>\r
702                                 You may notice that sometimes we refer to changes and other times\r
703                                 to differences. What's the difference?\r
704                         </para>\r
705                         <!--\r
706                         <para>\r
707                                 Git uses commit hash to mean 2 different things.\r
708                                 A revision generally represents the state of the repository at\r
709                                 a point in time, but it can also be used to represent the changeset\r
710                                 which created that revision, eg. <quote>Done in r1234</quote> means \r
711                                 that the changes committed in r1234 implement feature X.\r
712                                 To make it clearer which sense is being used, we use two\r
713                                 different terms.\r
714                         </para>\r
715                         <para>\r
716                                 If you select two revisions N and M, the context menu will offer\r
717                                 to show the <emphasis>difference</emphasis> between those two\r
718                                 revisions. In Git terms this is\r
719                                 <literal>diff -r M:N</literal>.\r
720                         </para>\r
721                         <para>\r
722                                 If you select a single revision N, the context menu will offer\r
723                                 to show the <emphasis>changes</emphasis> made in that revision.\r
724                                 In Git terms this is <literal>diff -r N-1:N</literal>\r
725                                 or <literal>diff -c N</literal>.\r
726                         </para>\r
727                         <para>\r
728                                 The bottom pane shows the files changed in all selected revisions,\r
729                                 so the context menu always offers to show <emphasis>changes</emphasis>.\r
730                         </para>\r
731                         -->\r
732                 </tip>\r
733         </sect2>\r
734         <!--\r
735         <sect2 id="tsvn-dug-showlog-3">\r
736                 <title>Getting more log messages</title>\r
737                 <para>\r
738                         The Log dialog does not always show all changes ever made for a\r
739                         number of reasons:\r
740                         <itemizedlist>\r
741                                 <listitem>\r
742                                         <para>\r
743                                                 For a large repository there may be hundreds or even\r
744                                                 thousands of changes and fetching them all could take\r
745                                                 a long time. Normally you are only interested in the\r
746                                                 more recent changes. By default, the number of log\r
747                                                 messages fetched is limited to 100, but you can change\r
748                                                 this value in \r
749                                                 <menuchoice>\r
750                                                         <guimenu>TortoiseGit</guimenu>\r
751                                                         <guimenuitem>Settings</guimenuitem>\r
752                                                 </menuchoice>\r
753                                                 (<xref linkend="tsvn-dug-settings-dialogs"/>),\r
754                                         </para>\r
755                                 </listitem>\r
756                                 <listitem>\r
757                                         <para>\r
758                                                 When the <guilabel>Stop on copy/rename</guilabel>\r
759                                                 box is checked, Show Log will stop at the point that\r
760                                                 the selected file or folder was copied from somewhere\r
761                                                 else within the repository. This can be useful when\r
762                                                 looking at branches (or tags) as it stops at the root\r
763                                                 of that branch, and gives a quick indication of changes\r
764                                                 made in that branch only.\r
765                                         </para>\r
766                                         <para>\r
767                                                 Normally you will want to leave this option unchecked.\r
768                                                 TortoiseGit remembers the state of the checkbox, so\r
769                                                 it will respect your preference.\r
770                                         </para>\r
771                                         <para>\r
772                                                 When the Show Log dialog is invoked from within the\r
773                                                 Merge dialog, the box is always checked by default.\r
774                                                 This is because merging is most often looking at\r
775                                                 changes on branches, and going back beyond the root\r
776                                                 of the branch does not make sense in that instance.\r
777                                         </para>\r
778                                         <para>\r
779                                                 Note that Git currently implements renaming\r
780                                                 as a copy/delete pair, so renaming a file or folder\r
781                                                 will also cause the log display to stop if this\r
782                                                 option is checked.\r
783                                         </para>\r
784                                 </listitem>\r
785                         </itemizedlist>\r
786                 </para>\r
787                 <para>\r
788                         If you want to see more log messages, click the\r
789                         <guibutton>Next 100</guibutton> to retrieve the next 100 log messages.\r
790                         You can repeat this as many times as needed.\r
791                 </para>\r
792                 <para>\r
793                         Next to this button there is a multi-function button which remembers\r
794                         the last option you used it for. Click on the arrow to see the other\r
795                         options offered.\r
796                 </para>\r
797                 <para>\r
798                         Use <guibutton>Show Range ...</guibutton> if you want to view a specific\r
799                         range of revisions. A dialog will then prompt you to enter the start\r
800                         and end revision.\r
801                 </para>\r
802                 <para>\r
803                         Use <guibutton>Show All</guibutton> if you want to see\r
804                         <emphasis>all</emphasis> log messages from HEAD right back to revision 1.\r
805                 </para>\r
806         </sect2>\r
807         -->\r
808         <!--\r
809         <sect2 id="tsvn-dug-showlog-current-rev">\r
810                 <title>Current Working Copy Revision</title>\r
811                 <para>\r
812                         Because the log dialog shows you the log from HEAD, not from the\r
813                         current working copy revision, it often happens that there are\r
814                         log messages shown for content which has not yet been updated\r
815                         in your working copy. To help make this clearer, the commit\r
816                         message which corresponds to the revision you have in your\r
817                         working copy is shown in bold.\r
818                 </para>\r
819                 <para>\r
820                         By default this only works for files. This is because the\r
821                         update revision for a folder may not correspond to the update\r
822                         revision of its content, and the only way to find the effective\r
823                         update revision for the folder is to crawl the working copy.\r
824                         This can be a slow operation for large working copies so if\r
825                         you want to enable this feature you must create a\r
826                         <literal>DWORD</literal> registry key with value 1 at\r
827                         <literal>HKCU\Software\TortoiseGit\RecursiveLogRev</literal>.\r
828                 </para>\r
829         </sect2>\r
830         -->\r
831         <!--\r
832         <sect2 id="tsvn-dug-showlog-mergetrack">\r
833                 <title>Merge Tracking Features</title>\r
834                 <indexterm>\r
835                         <primary>merge tracking log</primary>\r
836                 </indexterm>\r
837                 <para>\r
838                         Git 1.5 and later keeps a record of merges using properties.\r
839                         This allows us to get a more detailed history of merged changes.\r
840                         For example, if you develop a new feature on a branch and then merge\r
841                         that branch back to trunk, the feature development will show up on\r
842                         the trunk log as a single commit for the merge, even though there\r
843                         may have been 1000 commits during branch development.\r
844                 </para>\r
845                 <figure id="tsvn-dug-showlog-dia-mergetrack">\r
846                         <title>The Log Dialog Showing Merge Tracking Revisions</title>\r
847                         <graphic fileref="../images/LogMergeTrack.png"/>\r
848                 </figure>\r
849                 <para>\r
850                         If you want to see the detail of which revisions were merged as part\r
851                         of that commit, use the <guilabel>Include merged revisions</guilabel>\r
852                         checkbox. This will fetch the log messages again, but will also\r
853                         interleave the log messages from revisions which were merged.\r
854                         Merged revisions are shown in grey because they represent changes\r
855                         made on a different part of the tree.\r
856                 </para>\r
857                 <para>\r
858                         Of course, merging is never simple! During feature development on the\r
859                         branch there will probably be occasional merges back from trunk to\r
860                         keep the branch in sync with the main line code. So the merge history\r
861                         of the branch will also include another layer of merge history.\r
862                         These different layers are shown in the log dialog using indentation\r
863                         levels.\r
864                 </para>\r
865         </sect2>\r
866         -->\r
867         <!--\r
868         <sect2 id="tsvn-dug-showlog-4">\r
869                 <title>Changing the Log Message and Author</title>\r
870                 <indexterm>\r
871                         <primary>edit log/author</primary>\r
872                 </indexterm>\r
873                 <indexterm>\r
874                         <primary>revision properties</primary>\r
875                 </indexterm>\r
876                 <indexterm>\r
877                         <primary>revprops</primary>\r
878                 </indexterm>\r
879                 <para>\r
880                         Revision properties are completely different from the Git\r
881                         properties of each item. Revprops are descriptive items which are\r
882                         associated with one specific revision number in the repository,\r
883                         such as log message, commit date and committer name (author).\r
884                 </para>\r
885                 <para>\r
886                         Sometimes you might want to change a log message you once entered,\r
887                         maybe because there's a spelling error in it or you want to\r
888                         improve the message or change it for other reasons. Or you want to\r
889                         change the author of the commit because you forgot to set up\r
890                         authentication or...\r
891                 </para>\r
892                 <para>\r
893                         Git lets you change revision properties any time you want.\r
894                         But since such changes can't be\r
895                         undone (those changes are not versioned) this feature is disabled\r
896                         by default. To make this work, you must set up a pre-revprop-change\r
897                         hook. Please refer to the chapter on\r
898                         <ulink url="http://svnbook.red-bean.com/en/1.5/svn.reposadmin.create.html#svn.reposadmin.create.hooks">\r
899                                 <citetitle>Hook Scripts</citetitle>\r
900                         </ulink>\r
901                         in the Git Book for details about how to do that.\r
902                         Read <xref linkend="tsvn-repository-hooks"/> to find some further\r
903                         notes on implementing hooks on a Windows machine.\r
904                 </para>\r
905                 <para>\r
906                         Once you've set up your server with the required hooks, you can\r
907                         change the author and log message (or any other revprop) of any revision,\r
908                         using the context menu from the top pane of the Log dialog.\r
909                         You can also edit a log message using the context menu for the middle pane.\r
910                 </para>\r
911                 <warning>\r
912                         <para>\r
913                                 Because Git's revision properties are not versioned, making \r
914                                 modifications to such a property (for example, the\r
915                                 <literal>svn:log</literal> commit \r
916                                 message property) will overwrite the previous value of that \r
917                                 property <emphasis>forever</emphasis>.\r
918                         </para>\r
919                 </warning>\r
920         </sect2>\r
921         -->\r
922         <sect2 id="tsvn-dug-showlog-filter">\r
923                 <title>Filtering Log Messages</title>\r
924                 <indexterm>\r
925                         <primary>filter</primary>\r
926                 </indexterm>\r
927                 <para>\r
928                         If you want to restrict the log messages to show only those\r
929                         you are interested in rather than scrolling through a list\r
930                         of hundreds, you can use the filter controls at the top of\r
931                         the Log Dialog. The start and end date controls allow you\r
932                         to restrict the output to a known date range. The search\r
933                         box allows you to show only messages which contain a\r
934                         particular phrase.\r
935                 </para>\r
936                 <para>\r
937                         Click on the search icon to select which information you want\r
938                         to search in, and to choose <emphasis>regex</emphasis> mode.\r
939                         Normally you will only need a simple text search, but if you\r
940                         need to more flexible search terms, you can use regular expressions.\r
941                         If you hover the mouse over the box, a tooltip will give hints\r
942                         on how to use the regex functions.\r
943                         You can also find online documentation and a tutorial at\r
944                         <ulink url="http://www.regular-expressions.info/">\r
945                                 <citetitle>http://www.regular-expressions.info/</citetitle>\r
946                         </ulink>.\r
947                         The filter works by checking whether your filter string matches\r
948                         the log entries, and then only those entries which <emphasis>match</emphasis>\r
949                         the filter string are shown.\r
950                 </para>\r
951                 <para>\r
952                         To make the filter show all log entries that do <emphasis>not</emphasis>\r
953                         match the filter string, start the string with an exclamation mark ('!').\r
954                         For example, a filter string <literal>!username</literal> will only\r
955                         show those entries which were not committed by <literal>username</literal>.\r
956                 </para>\r
957                 <para>\r
958                         Note that these filters act on the messages already retrieved.\r
959                         They do not control downloading of messages from the repository.\r
960                 </para>\r
961                 <para>\r
962                         You can also filter the path names in the bottom pane using the\r
963                         <guilabel>Hide unrelated changed paths</guilabel> checkbox.\r
964                         Related paths are those which contain the path used to display\r
965                         the log. If you fetch the log for a folder, that means anything\r
966                         in that folder or below it. For a file it means just that one file.\r
967                         The checkbox is tristate: you can show all paths, grey out the\r
968                         unrelated ones, or hide the unrelated paths completely.\r
969                 </para>\r
970 \r
971     <para>\r
972       You can show all branches history by click <guilabel>All branches</guilabel>\r
973     </para>\r
974     <para>\r
975       You can show whole project history, no choose directory or file by click\r
976       <guilabel>Show Whole Project</guilabel>\r
977     </para>\r
978     <para>\r
979       <guilabel>First Parent</guilabel> just follow up first parent commit. This will\r
980     help understand overwhole history. \r
981     </para>  \r
982     <!--\r
983       <para>\r
984                         Sometimes your working practices will require log messages to follow\r
985                         a particular format, which means that the text describing the changes\r
986                         is not visible in the abbreviated summary shown in the top pane.\r
987                         The property <literal>tsvn:logsummary</literal> can be used to\r
988                         extract a portion of the log message to be shown in the top pane.\r
989                         Read <xref linkend="tsvn-dug-propertypage-tsvn-props"/> to find\r
990                         out how to use this property.\r
991                 </para>\r
992                 <tip>\r
993                         <title>No Log Formatting from Repository Browser</title>\r
994                         <para>\r
995                                 Because the formatting depends upon accessing Git\r
996                                 properties, you will only see the results when using a checked\r
997                                 out working copy. Fetching properties remotely is a slow operation,\r
998                                 so you will not see this feature in action from the repo browser.\r
999                         </para>\r
1000                 </tip>\r
1001     -->\r
1002         </sect2>\r
1003         <sect2 id="tsvn-dug-showlog-5">\r
1004                 <?dbhh topicname="HIDD_STATGRAPH"?>\r
1005                 <title>Statistical Information</title>\r
1006                 <indexterm>\r
1007                         <primary>statistics</primary>\r
1008                 </indexterm>\r
1009                 <para>\r
1010                         The <guibutton>Statistics</guibutton> button brings up a box\r
1011                         showing some interesting information about the revisions\r
1012                         shown in the Log dialog. This shows how many authors have\r
1013                         been at work, how many commits they have made, progress\r
1014                         by week, and much more. Now you can see at a glance who\r
1015                         has been working hardest and who is slacking ;-)\r
1016                 </para>\r
1017                 <sect3 id="tsvn-dug-showlog-stats-1">\r
1018                         <title>Statistics Page</title>\r
1019                         <para>\r
1020                                 This page gives you all the numbers you can think of,\r
1021                                 in particular the period and number of revisions covered,\r
1022                                 and some min/max/average values.\r
1023                         </para>\r
1024                 </sect3>\r
1025                 <sect3 id="tsvn-dug-showlog-stats-2">\r
1026                         <title>Commits by Author Page</title>\r
1027                         <para>\r
1028                                 <figure id="tsvn-dug-showlog-stats-dia-2">\r
1029                                         <title>Commits-by-Author Histogram</title>\r
1030                                         <graphic fileref="../images/StatsByAuthor.png"/>\r
1031                                 </figure>\r
1032                                 This graph shows you which authors have been active on the\r
1033                                 project as a simple histogram, stacked histogram or\r
1034                                 pie chart.\r
1035                                 <figure id="tsvn-dug-showlog-stats-dia-3">\r
1036                                         <title>Commits-by-Author Pie Chart</title>\r
1037                                         <graphic fileref="../images/StatsByAuthPie.png"/>\r
1038                                 </figure>\r
1039                         </para>\r
1040                         <para>\r
1041                                 Where there are a few major authors and many minor contributors,\r
1042                                 the number of tiny segments can make the graph more difficult to\r
1043                                 read. The slider at the bottom allows you to set a threshold\r
1044                                 (as a percentage of total commits) below which any activity is\r
1045                                 grouped into an <emphasis>Others</emphasis> category.\r
1046                         </para>\r
1047                 </sect3>\r
1048                 <sect3 id="tsvn-dug-showlog-stats-3">\r
1049                         <title>Commits by date Page</title>\r
1050                         <para>\r
1051                                 <figure id="tsvn-dug-showlog-stats-dia-4">\r
1052                                         <title>Commits-by-date Graph</title>\r
1053                                         <graphic fileref="../images/StatsByDate.png"/>\r
1054                                 </figure>\r
1055                                 This page gives you a graphical representation of project\r
1056                                 activity in terms of number of commits <emphasis>and</emphasis>\r
1057                                 author. This gives some idea of when a project is being worked\r
1058                                 on, and who was working at which time.\r
1059                         </para>\r
1060                         <para>\r
1061                                 When there are several authors, you will get many lines on the\r
1062                                 graph. There are two views available here: <emphasis>normal</emphasis>,\r
1063                                 where each author's activity is relative to the base line, and\r
1064                                 <emphasis>stacked</emphasis>, where each author's activity is\r
1065                                 relative to the line underneath.\r
1066                                 The latter option avoids the lines crossing over, which can make\r
1067                                 the graph easier to read, but less easy to see one author's output.\r
1068                         </para>\r
1069                 </sect3>\r
1070                 <para>\r
1071                         By default the analysis is case-sensitive, so users\r
1072                         <literal>PeterEgan</literal> and <literal>PeteRegan</literal>\r
1073                         are treated as different authors. However, in many cases user names\r
1074                         are not case-sensitive, and are sometimes entered inconsistently,\r
1075                         so you may want <literal>DavidMorgan</literal> and\r
1076                         <literal>davidmorgan</literal> to be treated as the same person.\r
1077                         Use the <guilabel>Authors case insensitive</guilabel> checkbox\r
1078                         to control how this is handled.\r
1079                 </para>\r
1080                 <para>\r
1081                         Note that the statistics cover the same period as the\r
1082                         Log dialog. If that is only displaying one revision\r
1083                         then the statistics will not tell you very much.\r
1084                 </para>\r
1085         </sect2>\r
1086         <!--\r
1087         <sect2 id="tsvn-dug-showlog-cache">\r
1088                 <?dbhh topicname="HIDD_GOOFFLINE"?>\r
1089                 <title>Offline Mode</title>\r
1090                 <para>\r
1091                         If the server is not reachable, and you have log caching enabled\r
1092                         you can use the log dialog and revision graph in offline mode.\r
1093                         This uses data from the cache, which allows you to continue working\r
1094                         although the information may not be up-to-date or even complete.\r
1095                 </para>\r
1096         </sect2>\r
1097         -->\r
1098         <sect2 id="tsvn-dug-showlog-refresh">\r
1099                 <title>Refreshing the View</title>\r
1100                 <para>\r
1101                         If you want to check the repository again for newer log messages,\r
1102                         you can simply refresh the view using <keycap>F5</keycap>. If you\r
1103                         are using the log cache (enabled by default), this will check the\r
1104                         repository for newer messages and fetch only the new ones.\r
1105                 </para>\r
1106                 <!--\r
1107                 <para>\r
1108                         If you are using the log cache and you think the message content\r
1109                         or author may have changed, you can use <keycap>Shift-F5</keycap>\r
1110                         or <keycap>Ctrl-F5</keycap> to re-fetch the displayed messages from\r
1111                         the server and update the log cache. Note that this only affects\r
1112                         messages currently shown and does not invalidate the entire cache\r
1113                         for that repository.\r
1114                 </para>\r
1115                 -->\r
1116         </sect2>\r
1117 </sect1>\r