~ubuntu-branches/ubuntu/intrepid/git-core/intrepid-updates

« back to all changes in this revision

Viewing changes to Documentation/git.txt

  • Committer: Package Import Robot
  • Author(s): Gerrit Pape
  • Date: 2007-10-04 08:27:01 UTC
  • mfrom: (1.1.23)
  • Revision ID: package-import@ubuntu.com-20071004082701-rsd058ontoqz4i30
Tags: 1:1.5.3.4-1
new upstream point release (closes: #445188).

Show diffs side-by-side

added added

removed removed

Lines of Context:
9
9
SYNOPSIS
10
10
--------
11
11
[verse]
12
 
'git' [--version] [--exec-path[=GIT_EXEC_PATH]] [-p|--paginate]
13
 
    [--bare] [--git-dir=GIT_DIR] [--help] COMMAND [ARGS]
 
12
'git' [--version] [--exec-path[=GIT_EXEC_PATH]]
 
13
    [-p|--paginate|--no-pager]
 
14
    [--bare] [--git-dir=GIT_DIR] [--work-tree=GIT_WORK_TREE]
 
15
    [--help] COMMAND [ARGS]
14
16
 
15
17
DESCRIPTION
16
18
-----------
41
43
branch of the `git.git` repository.
42
44
Documentation for older releases are available here:
43
45
 
44
 
* link:v1.5.2/git.html[documentation for release 1.5.2]
45
 
 
46
 
* release notes for
 
46
* link:v1.5.3/git.html[documentation for release 1.5.3]
 
47
 
 
48
* release notes for
 
49
  link:RelNotes-1.5.3.1.txt[1.5.3.1].
 
50
 
 
51
* release notes for
 
52
  link:RelNotes-1.5.2.5.txt[1.5.2.5],
 
53
  link:RelNotes-1.5.2.4.txt[1.5.2.4],
 
54
  link:RelNotes-1.5.2.3.txt[1.5.2.3],
 
55
  link:RelNotes-1.5.2.2.txt[1.5.2.2],
 
56
  link:RelNotes-1.5.2.1.txt[1.5.2.1],
47
57
  link:RelNotes-1.5.2.txt[1.5.2].
48
58
 
49
59
* link:v1.5.1.6/git.html[documentation for release 1.5.1.6]
97
107
-p|--paginate::
98
108
        Pipe all output into 'less' (or if set, $PAGER).
99
109
 
 
110
--no-pager::
 
111
        Do not pipe git output into a pager.
 
112
 
100
113
--git-dir=<path>::
101
114
        Set the path to the repository. This can also be controlled by
102
115
        setting the GIT_DIR environment variable.
103
116
 
 
117
--work-tree=<path>::
 
118
        Set the path to the working tree.  The value will not be
 
119
        used in combination with repositories found automatically in
 
120
        a .git directory (i.e. $GIT_DIR is not set).
 
121
        This can also be controlled by setting the GIT_WORK_TREE
 
122
        environment variable and the core.worktree configuration
 
123
        variable.
 
124
 
104
125
--bare::
105
 
        Same as --git-dir=`pwd`.
 
126
        Treat the repository as a bare repository.  If GIT_DIR
 
127
        environment is not set, it is set to the current working
 
128
        directory.
 
129
 
106
130
 
107
131
FURTHER DOCUMENTATION
108
132
---------------------
110
134
See the references above to get started using git.  The following is
111
135
probably more detail than necessary for a first-time user.
112
136
 
113
 
The <<Discussion,Discussion>> section below and the
114
 
link:core-tutorial.html[Core tutorial] both provide introductions to the
115
 
underlying git architecture.
 
137
The link:user-manual.html#git-concepts[git concepts chapter of the
 
138
user-manual] and the link:core-tutorial.html[Core tutorial] both provide
 
139
introductions to the underlying git architecture.
116
140
 
117
141
See also the link:howto-index.html[howto] documents for some useful
118
142
examples.
345
369
        specifies a path to use instead of the default `.git`
346
370
        for the base of the repository.
347
371
 
 
372
'GIT_WORK_TREE'::
 
373
        Set the path to the working tree.  The value will not be
 
374
        used in combination with repositories found automatically in
 
375
        a .git directory (i.e. $GIT_DIR is not set).
 
376
        This can also be controlled by the '--work-tree' command line
 
377
        option and the core.worktree configuration variable.
 
378
 
348
379
git Commits
349
380
~~~~~~~~~~~
350
381
'GIT_AUTHOR_NAME'::
391
422
 
392
423
other
393
424
~~~~~
 
425
'GIT_MERGE_VERBOSITY'::
 
426
        A number controlling the amount of output shown by
 
427
        the recursive merge strategy.  Overrides merge.verbosity.
 
428
        See gitlink:git-merge[1]
 
429
 
394
430
'GIT_PAGER'::
395
 
        This environment variable overrides `$PAGER`.
 
431
        This environment variable overrides `$PAGER`. If it is set
 
432
        to an empty string or to the value "cat", git will not launch
 
433
        a pager.
 
434
 
 
435
'GIT_SSH'::
 
436
        If this environment variable is set then gitlink:git-fetch[1]
 
437
        and gitlink:git-push[1] will use this command instead
 
438
        of `ssh` when they need to connect to a remote system.
 
439
        The 'GIT_SSH' command will be given exactly two arguments:
 
440
        the 'username@host' (or just 'host') from the URL and the
 
441
        shell command to execute on that remote system.
 
442
+
 
443
To pass options to the program that you want to list in GIT_SSH
 
444
you will need to wrap the program and options into a shell script,
 
445
then set GIT_SSH to refer to the shell script.
 
446
+
 
447
Usually it is easier to configure any desired options through your
 
448
personal `.ssh/config` file.  Please consult your ssh documentation
 
449
for further details.
 
450
 
 
451
'GIT_FLUSH'::
 
452
        If this environment variable is set to "1", then commands such
 
453
        as git-blame (in incremental mode), git-rev-list, git-log,
 
454
        git-whatchanged, etc., will force a flush of the output stream
 
455
        after each commit-oriented record have been flushed.   If this
 
456
        variable is set to "0", the output of these commands will be done
 
457
        using completely buffered I/O.   If this environment variable is
 
458
        not set, git will choose buffered or record-oriented flushing
 
459
        based on whether stdout appears to be redirected to a file or not.
396
460
 
397
461
'GIT_TRACE'::
398
462
        If this variable is set to "1", "2" or "true" (comparison
410
474
 
411
475
Discussion[[Discussion]]
412
476
------------------------
413
 
include::core-intro.txt[]
 
477
 
 
478
More detail on the following is available from the
 
479
link:user-manual.html#git-concepts[git concepts chapter of the
 
480
user-manual] and the link:core-tutorial.html[Core tutorial].
 
481
 
 
482
A git project normally consists of a working directory with a ".git"
 
483
subdirectory at the top level.  The .git directory contains, among other
 
484
things, a compressed object database representing the complete history
 
485
of the project, an "index" file which links that history to the current
 
486
contents of the working tree, and named pointers into that history such
 
487
as tags and branch heads.
 
488
 
 
489
The object database contains objects of three main types: blobs, which
 
490
hold file data; trees, which point to blobs and other trees to build up
 
491
directory heirarchies; and commits, which each reference a single tree
 
492
and some number of parent commits.
 
493
 
 
494
The commit, equivalent to what other systems call a "changeset" or
 
495
"version", represents a step in the project's history, and each parent
 
496
represents an immediately preceding step.  Commits with more than one
 
497
parent represent merges of independent lines of development.
 
498
 
 
499
All objects are named by the SHA1 hash of their contents, normally
 
500
written as a string of 40 hex digits.  Such names are globally unique.
 
501
The entire history leading up to a commit can be vouched for by signing
 
502
just that commit.  A fourth object type, the tag, is provided for this
 
503
purpose.
 
504
 
 
505
When first created, objects are stored in individual files, but for
 
506
efficiency may later be compressed together into "pack files".
 
507
 
 
508
Named pointers called refs mark interesting points in history.  A ref
 
509
may contain the SHA1 name of an object or the name of another ref.  Refs
 
510
with names beginning `ref/head/` contain the SHA1 name of the most
 
511
recent commit (or "head") of a branch under developement.  SHA1 names of
 
512
tags of interest are stored under `ref/tags/`.  A special ref named
 
513
`HEAD` contains the name of the currently checked-out branch.
 
514
 
 
515
The index file is initialized with a list of all paths and, for each
 
516
path, a blob object and a set of attributes.  The blob object represents
 
517
the contents of the file as of the head of the current branch.  The
 
518
attributes (last modified time, size, etc.) are taken from the
 
519
corresponding file in the working tree.  Subsequent changes to the
 
520
working tree can be found by comparing these attributes.  The index may
 
521
be updated with new content, and new commits may be created from the
 
522
content stored in the index.
 
523
 
 
524
The index is also capable of storing multiple entries (called "stages")
 
525
for a given pathname.  These stages are used to hold the various
 
526
unmerged version of a file when a merge is in progress.
414
527
 
415
528
Authors
416
529
-------
417
530
* git's founding father is Linus Torvalds <torvalds@osdl.org>.
418
 
* The current git nurse is Junio C Hamano <junkio@cox.net>.
 
531
* The current git nurse is Junio C Hamano <gitster@pobox.com>.
419
532
* The git potty was written by Andres Ericsson <ae@op5.se>.
420
533
* General upbringing is handled by the git-list <git@vger.kernel.org>.
421
534
 
428
541
GIT
429
542
---
430
543
Part of the gitlink:git[7] suite
431