|
3 | 3 | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> |
4 | 4 | <head> |
5 | 5 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |
6 | | -<meta name="generator" content="AsciiDoc 7.0.1" /> |
| 6 | +<meta name="generator" content="AsciiDoc 7.0.2" /> |
7 | 7 | <style type="text/css"> |
8 | 8 | /* Debug borders */ |
9 | 9 | p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 { |
@@ -276,6 +276,22 @@ <h1>GIT Glossary</h1> |
276 | 276 | </p> |
277 | 277 | </dd> |
278 | 278 | <dt> |
| 279 | +<a id="ref_bare_repository"></a>bare repository |
| 280 | +</dt> |
| 281 | +<dd> |
| 282 | +<p> |
| 283 | + A <a href="#ref_bare_repository">bare repository</a> is normally an appropriately |
| 284 | + named <a href="#ref_directory">directory</a> with a <tt>.git</tt> suffix that does not |
| 285 | + have a locally checked-out copy of any of the files under |
| 286 | + <a href="#ref_revision">revision</a> control. That is, all of the <tt>git</tt> |
| 287 | + administrative and control files that would normally be present in the |
| 288 | + hidden <tt>.git</tt> sub-<a href="#ref_directory">directory</a> are directly present in |
| 289 | + the <tt><a href="#ref_repository">repository</a>.git</tt> <a href="#ref_directory">directory</a> |
| 290 | + instead, and no other files are present and checked out. Usually |
| 291 | + publishers of public repositories make bare repositories available. |
| 292 | +</p> |
| 293 | +</dd> |
| 294 | +<dt> |
279 | 295 | <a id="ref_blob_object"></a>blob object |
280 | 296 | </dt> |
281 | 297 | <dd> |
@@ -333,13 +349,26 @@ <h1>GIT Glossary</h1> |
333 | 349 | </p> |
334 | 350 | </dd> |
335 | 351 | <dt> |
| 352 | +<a id="ref_cherry-picking"></a>cherry-picking |
| 353 | +</dt> |
| 354 | +<dd> |
| 355 | +<p> |
| 356 | + In <a href="#ref_SCM">SCM</a> jargon, "cherry pick" means to choose a subset of |
| 357 | + changes out of a series of changes (typically commits) and record them |
| 358 | + as a new series of changes on top of different codebase. In GIT, this is |
| 359 | + performed by "git cherry-pick" command to extract the change introduced |
| 360 | + by an existing <a href="#ref_commit">commit</a> and to record it based on the tip |
| 361 | + of the current <a href="#ref_branch">branch</a> as a new <a href="#ref_commit">commit</a>. |
| 362 | +</p> |
| 363 | +</dd> |
| 364 | +<dt> |
336 | 365 | <a id="ref_clean"></a>clean |
337 | 366 | </dt> |
338 | 367 | <dd> |
339 | 368 | <p> |
340 | 369 | A <a href="#ref_working_tree">working tree</a> is <a href="#ref_clean">clean</a>, if it |
341 | 370 | corresponds to the <a href="#ref_revision">revision</a> referenced by the current |
342 | | - <a href="#ref_head">head</a>. |
| 371 | + <a href="#ref_head">head</a>. Also see "<a href="#ref_dirty">dirty</a>". |
343 | 372 | </p> |
344 | 373 | </dd> |
345 | 374 | <dt> |
@@ -423,6 +452,21 @@ <h1>GIT Glossary</h1> |
423 | 452 | </p> |
424 | 453 | </dd> |
425 | 454 | <dt> |
| 455 | +<a id="ref_fast_forward"></a>fast forward |
| 456 | +</dt> |
| 457 | +<dd> |
| 458 | +<p> |
| 459 | + A fast-forward is a special type of <a href="#ref_merge">merge</a> where you have a |
| 460 | + <a href="#ref_revision">revision</a> and you are "merging" another |
| 461 | + <a href="#ref_branch">branch</a>'s changes that happen to be a descendant of what |
| 462 | + you have. In such these cases, you do not make a new <a href="#ref_merge">merge</a> |
| 463 | + <a href="#ref_commit">commit</a> but instead just update to his |
| 464 | + <a href="#ref_revision">revision</a>. This will happen frequently on a |
| 465 | + <a href="#ref_tracking_branch">tracking branch</a> of a remote |
| 466 | + <a href="#ref_repository">repository</a>. |
| 467 | +</p> |
| 468 | +</dd> |
| 469 | +<dt> |
426 | 470 | <a id="ref_fetch"></a>fetch |
427 | 471 | </dt> |
428 | 472 | <dd> |
@@ -480,6 +524,20 @@ <h1>GIT Glossary</h1> |
480 | 524 | </p> |
481 | 525 | </dd> |
482 | 526 | <dt> |
| 527 | +<a id="ref_hook"></a>hook |
| 528 | +</dt> |
| 529 | +<dd> |
| 530 | +<p> |
| 531 | + During the normal execution of several git commands, call-outs are made |
| 532 | + to optional scripts that allow a developer to add functionality or |
| 533 | + checking. Typically, the hooks allow for a command to be pre-verified |
| 534 | + and potentially aborted, and allow for a post-notification after the |
| 535 | + operation is done. The <a href="#ref_hook">hook</a> scripts are found in the |
| 536 | + <tt>$GIT_DIR/hooks/</tt> <a href="#ref_directory">directory</a>, and are enabled by simply |
| 537 | + making them executable. |
| 538 | +</p> |
| 539 | +</dd> |
| 540 | +<dt> |
483 | 541 | <a id="ref_index"></a>index |
484 | 542 | </dt> |
485 | 543 | <dd> |
@@ -507,11 +565,11 @@ <h1>GIT Glossary</h1> |
507 | 565 | </dt> |
508 | 566 | <dd> |
509 | 567 | <p> |
510 | | - The default <a href="#ref_branch">branch</a>. Whenever you create a git |
| 568 | + The default development <a href="#ref_branch">branch</a>. Whenever you create a git |
511 | 569 | <a href="#ref_repository">repository</a>, a <a href="#ref_branch">branch</a> named |
512 | 570 | "<a href="#ref_master">master</a>" is created, and becomes the active |
513 | 571 | <a href="#ref_branch">branch</a>. In most cases, this contains the local |
514 | | - development. |
| 572 | + development, though that is purely conventional and not required. |
515 | 573 | </p> |
516 | 574 | </dd> |
517 | 575 | <dt> |
@@ -580,11 +638,11 @@ <h1>GIT Glossary</h1> |
580 | 638 | </dt> |
581 | 639 | <dd> |
582 | 640 | <p> |
583 | | - The default upstream <a href="#ref_branch">branch</a>. Most projects have one |
584 | | - upstream project which they track, and by default |
585 | | - <em><a href="#ref_origin">origin</a></em> is used for that purpose. New updates from |
586 | | - upstream will be fetched into this <a href="#ref_branch">branch</a>; you should |
587 | | - never <a href="#ref_commit">commit</a> to it yourself. |
| 641 | + The default upstream <a href="#ref_tracking_branch">tracking branch</a>. Most |
| 642 | + projects have at least one upstream project which they track. By default |
| 643 | + <em><a href="#ref_origin">origin</a></em> is used for that purpose. New upstream updates |
| 644 | + will be fetched into this <a href="#ref_branch">branch</a>; you should never |
| 645 | + <a href="#ref_commit">commit</a> to it yourself. |
588 | 646 | </p> |
589 | 647 | </dd> |
590 | 648 | <dt> |
@@ -617,6 +675,18 @@ <h1>GIT Glossary</h1> |
617 | 675 | </p> |
618 | 676 | </dd> |
619 | 677 | <dt> |
| 678 | +<a id="ref_pickaxe"></a>pickaxe |
| 679 | +</dt> |
| 680 | +<dd> |
| 681 | +<p> |
| 682 | + The term <a href="#ref_pickaxe">pickaxe</a> refers to an option to the diffcore |
| 683 | + routines that help select changes that add or delete a given text |
| 684 | + string. With the —<a href="#ref_pickaxe">pickaxe</a>-all option, it can be used to |
| 685 | + view the full <a href="#ref_changeset">changeset</a> that introduced or removed, |
| 686 | + say, a particular line of text. See <a href="git-diff.html">git-diff(1)</a>. |
| 687 | +</p> |
| 688 | +</dd> |
| 689 | +<dt> |
620 | 690 | <a id="ref_plumbing"></a>plumbing |
621 | 691 | </dt> |
622 | 692 | <dd> |
@@ -687,12 +757,32 @@ <h1>GIT Glossary</h1> |
687 | 757 | </dt> |
688 | 758 | <dd> |
689 | 759 | <p> |
690 | | - A 40-byte hex representation of a <a href="#ref_SHA1">SHA1</a> pointing to a |
691 | | - particular <a href="#ref_object">object</a>. These may be stored in |
| 760 | + A 40-byte hex representation of a <a href="#ref_SHA1">SHA1</a> or a name that |
| 761 | + denotes a particular <a href="#ref_object">object</a>. These may be stored in |
692 | 762 | <tt>$GIT_DIR/refs/</tt>. |
693 | 763 | </p> |
694 | 764 | </dd> |
695 | 765 | <dt> |
| 766 | +<a id="ref_refspec"></a>refspec |
| 767 | +</dt> |
| 768 | +<dd> |
| 769 | +<p> |
| 770 | + A <a href="#ref_refspec">refspec</a> is used by <a href="#ref_fetch">fetch</a> and |
| 771 | + <a href="#ref_push">push</a> to describe the mapping between remote <a href="#ref_ref">ref</a> |
| 772 | + and local <a href="#ref_ref">ref</a>. They are combined with a colon in the format |
| 773 | + <src>:<dst>, preceded by an optional plus sign, +. For example: <tt>git |
| 774 | + <a href="#ref_fetch">fetch</a> $URL |
| 775 | + refs/heads/<a href="#ref_master">master</a>:refs/heads/<a href="#ref_origin">origin</a></tt> means |
| 776 | + "grab the <a href="#ref_master">master</a> <a href="#ref_branch">branch</a> <a href="#ref_head">head</a> |
| 777 | + from the $URL and store it as my <a href="#ref_origin">origin</a> |
| 778 | + <a href="#ref_branch">branch</a> <a href="#ref_head">head</a>". And <tt>git <a href="#ref_push">push</a> |
| 779 | + $URL refs/heads/<a href="#ref_master">master</a>:refs/heads/to-upstream</tt> means |
| 780 | + "publish my <a href="#ref_master">master</a> <a href="#ref_branch">branch</a> |
| 781 | + <a href="#ref_head">head</a> as to-upstream <a href="#ref_master">master</a> <a href="#ref_head">head</a> |
| 782 | + at $URL". See also <a href="git-push.html">git-push(1)</a> |
| 783 | +</p> |
| 784 | +</dd> |
| 785 | +<dt> |
696 | 786 | <a id="ref_repository"></a>repository |
697 | 787 | </dt> |
698 | 788 | <dd> |
@@ -774,6 +864,30 @@ <h1>GIT Glossary</h1> |
774 | 864 | </p> |
775 | 865 | </dd> |
776 | 866 | <dt> |
| 867 | +<a id="ref_topic_branch"></a>topic branch |
| 868 | +</dt> |
| 869 | +<dd> |
| 870 | +<p> |
| 871 | + A regular git <a href="#ref_branch">branch</a> that is used by a developer to |
| 872 | + identify a conceptual line of development. Since branches are very easy |
| 873 | + and inexpensive, it is often desirable to have several small branches |
| 874 | + that each contain very well defined concepts or small incremental yet |
| 875 | + related changes. |
| 876 | +</p> |
| 877 | +</dd> |
| 878 | +<dt> |
| 879 | +<a id="ref_tracking_branch"></a>tracking branch |
| 880 | +</dt> |
| 881 | +<dd> |
| 882 | +<p> |
| 883 | + A regular git <a href="#ref_branch">branch</a> that is used to follow changes from |
| 884 | + another <a href="#ref_repository">repository</a>. A <a href="#ref_tracking_branch">tracking branch</a> should not contain direct modifications or have local commits |
| 885 | + made to it. A <a href="#ref_tracking_branch">tracking branch</a> can usually be |
| 886 | + identified as the right-hand-side <a href="#ref_ref">ref</a> in a Pull: |
| 887 | + <a href="#ref_refspec">refspec</a>. |
| 888 | +</p> |
| 889 | +</dd> |
| 890 | +<dt> |
777 | 891 | <a id="ref_tree"></a>tree |
778 | 892 | </dt> |
779 | 893 | <dd> |
@@ -824,7 +938,7 @@ <h2>GIT</h2> |
824 | 938 | </div> |
825 | 939 | <div id="footer"> |
826 | 940 | <div id="footer-text"> |
827 | | -Last updated 10-Jan-2006 16:53:50 PDT |
| 941 | +Last updated 04-May-2006 08:01:37 UTC |
828 | 942 | </div> |
829 | 943 | </div> |
830 | 944 | </body> |
|
0 commit comments