1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-11-06 01:03:02 +01:00
Commit graph

880 commits

Author SHA1 Message Date
Junio C Hamano
fd60acaced Merge branch 'fix'
* fix:
  repack: honor -d even when no new pack was created
  clone: keep --reference even with -l -s
  repo-config: document what value_regexp does a bit more clearly.
  Release config lock if the regex is invalid
  core-tutorial.txt: escape asterisk
2006-05-07 15:36:39 -07:00
Junio C Hamano
6fe31e2e4c repo-config: document what value_regexp does a bit more clearly.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-07 15:32:51 -07:00
Martin Langhoff
50c08d4872 Merge with git://kernel.org/pub/scm/git/git.git 2006-05-08 10:03:37 +12:00
Matthias Lederhofer
245f1029d6 core-tutorial.txt: escape asterisk
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-07 13:55:36 -07:00
Junio C Hamano
83e77a25dc update-index --again
After running 'git-update-index' for some paths, you may want to
do the update on the same set of paths again.

The new flag --again checks the paths whose index entries are
are different from the HEAD commit and updates them from the
working tree contents.

This was brought up by Carl Worth on #git.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-05 22:57:27 -07:00
Junio C Hamano
e388c73825 core.prefersymlinkrefs: use symlinks for .git/HEAD
When inspecting a project whose build infrastructure used to
assume that .git/HEAD is a symlink ref, core.prefersymlinkrefs
in the config file of such a project would help to bisect its
history.

Signed-off-by: Junio C Hamano <junkio@cox.net>
(cherry picked from 9f0bb90d16 commit)
2006-05-05 14:37:08 -07:00
sean
81ae43cdc4 Clarify git-cherry documentation.
Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-05 14:23:08 -07:00
sean
ae0b219c8e Update git-unpack-objects documentation.
Document that git-unpack-objects will not produce any
results when used on a pack that exists in a repository;
move it first.

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-05 14:22:32 -07:00
sean
e994004f93 Fix up docs where "--" isn't displayed correctly.
A bare "--" doesn't show up in man or html pages correctly
as two individual dashes unless backslashed as \--
in the asciidoc source.  Note, no backslash is needed
inside a literal block.

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-05 14:21:52 -07:00
sean
2b5f3ed316 Several trivial documentation touch ups.
Move incorrect asciidoc level 2 titles back to level 1.

  Show output of git-name-rev in man page example.

  Reword sentences that begin with a period (.) in asciidoc
  numbered lists to work around conversion to man page bug.

  Mention that git-repack now calls git-prune-packed
  when the -d option is passed to it.

  [imap] section headers in the config file example need to be
  contained in a literal block.  imap.pass is the proper config
  file variable to use, not imap.password.

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-05 14:21:18 -07:00
Junio C Hamano
df71b4f7f9 Merge branch 'jc/symref'
* jc/symref:
  core.prefersymlinkrefs: use symlinks for .git/HEAD
2006-05-03 23:54:55 -07:00
Junio C Hamano
6b16250a45 Merge branch 'js/repoconfig'
* js/repoconfig:
  repo-config: deconvolute logics
  repo-config: readability fixups.
  repo-config: support --get-regexp
2006-05-03 23:41:28 -07:00
Junio C Hamano
d820f91871 Merge branch 'jc/count'
* jc/count:
  builtin-count-objects: open packs when running -v
  builtin-count-objects: make it official.
  built-in count-objects.
2006-05-03 23:40:39 -07:00
Junio C Hamano
dd371b49f9 Merge branch 'maint'
* maint:
  Add a few more words to the glossary.
  Added definitions for a few words:
  Alphabetize the glossary.
2006-05-03 23:00:02 -07:00
Jon Loeliger
7abd7117ec Add a few more words to the glossary.
Clean up a few entries and fix typos.

    bare repository
    cherry-picking
    hook
    topic branch

[jc: removing questionable "symbolic ref -- see 'ref'" for now.]

Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 22:59:30 -07:00
Jon Loeliger
9290cd58c3 Added definitions for a few words:
fast forward
    pickaxe
    refspec
    tracking branch

Wild hack allows "link:git-" prefix to reference commands too.

Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 22:31:50 -07:00
Jon Loeliger
aa9b1573a5 Alphabetize the glossary.
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 22:31:43 -07:00
Junio C Hamano
935e714204 Merge branch 'fix'
* fix:
  fix various typos in documentation
2006-05-03 17:15:06 -07:00
Matthias Kestenholz
060729dd7e add documentation for update-index --unresolve
Signed-off-by: Matthias Kestenholz <matthias@spinlock.ch>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 14:19:01 -07:00
Matthias Kestenholz
de5f2bf361 fix various typos in documentation
Signed-off-by: Matthias Kestenholz <matthias@spinlock.ch>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 14:08:41 -07:00
Martin Langhoff
24e12579fc Merge with git://kernel.org/pub/scm/git/git.git 2006-05-03 22:27:33 +12:00
Junio C Hamano
9f0bb90d16 core.prefersymlinkrefs: use symlinks for .git/HEAD
When inspecting a project whose build infrastructure used to
assume that .git/HEAD is a symlink ref, core.prefersymlinkrefs
in the config file of such a project would help to bisect its
history.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-02 20:09:56 -07:00
Johannes Schindelin
2fa9a0fb31 repo-config: support --get-regexp
With --get-regexp, output all key/value pairs where the key matches a
regexp. Example:

	git-repo-config --get-regexp remote.*.url

will output something like

	remote.junio.url git://git.kernel.org/pub/scm/git/git.git
	remote.gitk.url git://git.kernel.org/pub/scm/gitk/gitk.git

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-02 20:09:54 -07:00
Junio C Hamano
468eb79ed4 builtin-count-objects: make it official.
Remove the shell-script version, make the hardlink from the git
binary, and update the documentation to describe a new option.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01 23:06:06 -07:00
Junio C Hamano
dd097fcd4d Merge branch 'se/rebase'
* se/rebase:
  Add --continue and --abort options to git-rebase.
2006-05-01 22:39:57 -07:00
Junio C Hamano
6bd20358a9 write-tree: --prefix=<path>
The "bind" commit can express an aggregation of multiple
projects into a single commit.

In such an organization, there would be one project, root of
whose tree object is at the same level of the root of the
aggregated projects, and other projects have their toplevel in
separate subdirectories.  Let's call that root level project the
"primary project", and call other ones just "subprojects".

You would first read-tree the primary project, and then graft
the subprojects under their appropriate location using read-tree
--prefix=<subdir>/ repeatedly.

To write out a tree object from such an index for a subproject,
write-tree --prefix=<subdir>/ is used.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01 22:29:16 -07:00
Junio C Hamano
f4c6f2d328 read-tree: --prefix=<path>/ option.
With "--prefix=<path>/" option, read-tree keeps the current
index contents, and reads the contents of named tree-ish under
directory at `<prefix>`.  The original index file cannot have
anything at the path `<prefix>` itself, and have nothing in
`<prefix>/` directory.  This can be used to graft an
independent tree into a subdirectory of the current index.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01 22:29:16 -07:00
Martin Langhoff
e660e3997f Merge with git://kernel.org/pub/scm/git/git.git 2006-05-01 10:20:56 +12:00
Junio C Hamano
89719209f4 Merge branch 'fix'
* fix:
  Fix trivial typo in git-log man page.
  Properly render asciidoc "callouts" in git man pages.
  Fix up remaining man pages that use asciidoc "callouts".
  Update the git-branch man page to include the "-r" option,
  annotate: display usage information if no filename was given
  annotate: fix warning about uninitialized scalar
  git-am --resolved: more usable error message.
2006-04-28 16:57:32 -07:00
Sean Estabrooks
aa6bf0eb64 Fix trivial typo in git-log man page.
Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
2006-04-28 14:31:53 -07:00
Sean Estabrooks
776e994af5 Properly render asciidoc "callouts" in git man pages.
Adds an xsl fragment to render docbook callouts when
converting to man page format.  Update the Makefile
to have "xmlto" use it when generating man pages.

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
2006-04-28 14:31:51 -07:00
Sean Estabrooks
48aeecdcc1 Fix up remaining man pages that use asciidoc "callouts".
Unfortunately docbook does not allow a callout to be
referenced from inside a callout list description.
Rewrite one paragraph in git-reset man page to work
around this limitation.

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
2006-04-28 14:31:36 -07:00
Sean Estabrooks
2eaf273d51 Update the git-branch man page to include the "-r" option,
and fix up asciidoc "callouts"

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
2006-04-28 14:31:18 -07:00
sean
031321c654 Add --continue and --abort options to git-rebase.
git rebase [--onto <newbase>] <upstream> [<branch>]
  git rebase --continue
  git rebase --abort

Add "--continue" to restart the rebase process after
manually resolving conflicts.  The user is warned if
there are still differences between the index and the
working files.

Add "--abort" to restore the original branch, and
remove the .dotest working files.

Some minor additions to the git-rebase documentation.

[jc: fix that applies to the maintenance track has been dealt
 with separately.]

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-26 17:10:33 -07:00
Martin Langhoff
992793c832 git-cvsexportcommit: Add -f(orce) and -m(essage prefix) flags, small cleanups. 2006-04-26 12:26:16 +12:00
Petr Baudis
e1cbc46d12 Deprecate usage of git-var -l for getting config vars list
This has been an unfortunate sideway in the git API evolution.
We use git-repo-config for all the other .git/config interaction
so let's also use git-repo-config -l for the variable listing.

Signed-off-by: Petr Baudis <pasky@suse.cz>
2006-04-24 22:29:36 -07:00
Petr Baudis
de791f15a1 git-repo-config --list support
This adds git-repo-config --list (or git-repo-config -l) support,
similar to what git-var -l does now (to be phased out so that we
have a single sane interface to the config file instead of fragmented
and confused API).

Signed-off-by: Petr Baudis <pasky@suse.cz>
2006-04-24 22:29:33 -07:00
Petr Baudis
1ab661ddb7 Document the configuration file
This patch adds a Documentation/config.txt file included by git-repo-config
and currently aggregating hopefully all the available git plumbing / core
porcelain configuration variables, as well as briefly describing the format.

It also updates an outdated bit of the example in git-repo-config(1).

Signed-off-by: Petr Baudis <pasky@suse.cz>
2006-04-24 22:26:37 -07:00
Petr Baudis
4ee6bc9913 Document git-var -l listing also configuration variables
Signed-off-by: Petr Baudis <pasky@suse.cz>
2006-04-24 22:26:34 -07:00
Shawn Pearce
23edecbc9a Document git-clone --reference
The new --reference flag introduced to git-clone in
GIT 1.3.0 was not documented but is rather handy.
So document it.

Also corrected a minor issue with the documentation for the
-s flag; the info/alternates file name was spelled wrong.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-18 17:56:53 -07:00
Jonas Fonseca
8f2b72a936 Add git-annotate(1) and git-blame(1)
[jc: with entries in git.txt]

Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-18 12:06:55 -07:00
Johannes Schindelin
2935327394 diff-options: add --patch-with-stat
With this option, git prepends a diffstat in front of the patch.

Since I really, really do not know what a diffstat of a combined diff
("merge diff") should look like, the diffstat is not generated for these.

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-15 19:30:27 -07:00
Junio C Hamano
afcb536f28 Merge branch 'js/diffstat'
* js/diffstat:
  diff --stat: no need to ask funcnames nor context.
  diff-options: add --stat (take 2)
  diff-options: add --stat (take 2)
2006-04-14 21:55:23 -07:00
Junio C Hamano
e51c3b5006 git-log <diff-options> <paths> documentation
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-14 12:59:09 -07:00
Johannes Schindelin
d75f7952ef diff-options: add --stat (take 2)
Now, you can say "git diff --stat" (to get an idea how many changes are
uncommitted), or "git log --stat".

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-13 16:48:24 -07:00
Junio C Hamano
c16e30c088 Documentation: add a couple of missing docs.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-13 00:21:06 -07:00
Junio C Hamano
55275b3812 Merge branch 'jc/withraw' into next
* jc/withraw:
  Separate the raw diff and patch with a newline
  Document --patch-with-raw
2006-04-11 11:52:01 -07:00
Petr Baudis
5c91da25d7 Document --patch-with-raw
Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-11 11:16:51 -07:00
Eric W. Biederman
4749588713 Implement limited context matching in git-apply.
Ok this really should be the good version.  The option
handling has been reworked to be automation safe.

Currently to import the -mm tree I have to work around
git-apply by using patch.  Because some of Andrews
patches in quilt will only apply with fuzz.

I started out implementing a --fuzz option and then I realized
fuzz is not a very safe concept for an automated system.  What
you really want is a minimum number of context lines that must
match.  This allows policy to be set without knowing how many
lines of context a patch actually provides.   By default
the policy remains to match all provided lines of context.

Allowng git-apply to match a restricted set of context makes
it much easier to import the -mm tree into git.  I am still only
processing  1.5 to 1.6 patches a second for the 692 patches in
2.6.17-rc1-mm2 is still painful but it does help.

If I just loop through all of Andrews patches in order
and run git-apply --index -C1 I process the entire patchset
in 1m53s or about 6 patches per second.  So running
git-mailinfo, git-write-tree, git-commit-tree, and
git-update-ref everytime has a measurable impact,
and shows things can be speeded up even more.

All of these timings were taking on my poor 700Mhz Athlon
with 512MB of ram.  So people with fast machiens should
see much better performance.

When a match is found after the number of context are reduced a
warning is generated.  Since this is a rare event and possibly
dangerous this seems to make sense.  Unless you are patching
a single file the error message is a little bit terse at
the moment, but it should be easy to go back and fix.

I have also updated the documentation for git-apply to reflect
the new -C option that sets the minimum number of context
lines that must match.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-10 19:44:08 -07:00
Petr Baudis
a13ba129cd Improve the git-diff-tree -c/-cc documentation
This tries to clarify the -c/-cc documentation and clean up the style and
grammar.

Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-09 11:11:19 -07:00
Junio C Hamano
9760662f1a Add Documentation/technical/pack-format.txt
... along with the previous one, pack-heuristics, by popular
demand.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-07 02:07:40 -07:00
Jon Loeliger
b116b297a8 Added Packing Heursitics IRC writeup.
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-07 02:06:18 -07:00
Mike McCormack
454a35b847 Add documentation for git-imap-send.
Signed-off-by: Mike McCormack <mike@codeweavers.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-05 20:48:40 -07:00
Francis Daly
6cbd5d7d79 Tweaks to make asciidoc play nice.
Once the content has been generated, the formatting elves can reorder
it to be pretty...

Signed-off-by: Francis Daly <francis@daoine.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-05 15:46:54 -07:00
Marco Roeland
ae5d8470f6 git-commit: document --amend
The "--amend" option is used to amend the tip of the current branch. This
documentation text was copied straight from the commit that implemented it.

Some minor format tweaks for asciidoc were taken from work by Francis Daly
in commit b0d08a5.. It looks good now also in the html page.

[jc: amended further to follow the recommendation by Francis in
commit 3070b60].

Signed-off-by: Marco Roeland <marco.roeland@xs4all.nl>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-05 14:07:21 -07:00
Junio C Hamano
9b6891f651 Merge branch 'pb/regex'
* pb/regex:
  On some platforms, certain headers need to be included before regex.h
  Support for pickaxe matching regular expressions
2006-04-05 14:06:26 -07:00
Pavel Roskin
c3b831bd84 Add git-clean command
This command removes untracked files from the working tree.  This
implementation is based on cg-clean with some simplifications.  The
documentation is included.

[jc: with trivial documentation fix, noticed by Jakub Narebski]

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-05 02:51:27 -07:00
Petr Baudis
d01d8c6782 Support for pickaxe matching regular expressions
git-diff-* --pickaxe-regex will change the -S pickaxe to match
POSIX extended regular expressions instead of fixed strings.

The regex.h library is a rather stupid interface and I like pcre too, but
with any luck it will be everywhere we will want to run Git on, it being
POSIX.2 and all. I'm not sure if we can expect platforms like AIX to
conform to POSIX.2 or if win32 has regex.h. We might add a flag to
Makefile if there is a portability trouble potential.

Signed-off-by: Petr Baudis <pasky@suse.cz>
2006-04-04 13:44:15 -07:00
J. Bruce Fields
23091e954c Documentation: revise top of git man page
I'm afraid I'll be accused of trying to suck all the jokes and the
personality out of the git documentation.  I'm not!  Really!

That said, "man git" is one of the first things a new user is likely try,
and it seems a little cruel to start off with a somewhat obscure joke
about the architecture of git.

So instead I'm trying for a relatively straightforward description of what
git does, and what features distinguish it from other systems, together
with immediate links to introductory documentation.

I also did some minor reorganization in an attempt to clarify the
classification of commands.  And revised a bit for conciseness (as is
obvious from the diffstat--hopefully I didn't cut anything important).

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-02 21:17:32 -07:00
Junio C Hamano
d93067d9c7 Merge branch 'master' into next
* master:
  Optionally do not list empty directories in git-ls-files --others
  Document git-rebase behavior on conflicts.
  Fix error handling for nonexistent names
2006-03-26 23:44:14 -08:00
Petr Baudis
b0a3de4231 Optionally do not list empty directories in git-ls-files --others
Without the --directory flag, git-ls-files wouldn't ever list directories,
producing no output for empty directories, which is good since they cannot
be added and they bear no content, even untracked one (if Git ever starts
tracking directories on their own, this should obviously change since the
content notion will change).

With the --directory flag however, git-ls-files would list even empty
directories. This may be good in some situations but sometimes you want to
prevent that. This patch adds a --no-empty-directory option which makes
git-ls-files omit empty directories.

Signed-off-by: Petr Baudis <pasky@suse.cz>
2006-03-26 19:08:24 -08:00
J. Bruce Fields
8978d043c3 Document git-rebase behavior on conflicts. 2006-03-26 19:07:43 -08:00
Junio C Hamano
48d6e97afe Merge branch 'rs/tar-tree' into next
* rs/tar-tree:
  tar-tree: Use the prefix field of a tar header
  tar-tree: Remove obsolete code
  tar-tree: Use write_entry() to write the archive contents
  tar-tree: Introduce write_entry()
  tar-tree: Use SHA1 of root tree for the basedir
  git-apply: safety fixes
  Removed bogus "<snap>" identifier.
  Clarify and expand some hook documentation.
  commit-tree: check return value from write_sha1_file()
  send-email: Identify author at the top when sending e-mail
  Format tweaks for asciidoc.
2006-03-25 17:43:22 -08:00
Jon Loeliger
6a1640ffc6 Removed bogus "<snap>" identifier.
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-24 22:24:06 -08:00
Jon Loeliger
6250ad1e7a Clarify and expand some hook documentation.
Clarify update and post-update hooks.
Made a few references to the hooks documentation.

Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-24 22:24:02 -08:00
Francis Daly
b0d08a504b Format tweaks for asciidoc.
Some documentation "options" were followed by independent preformatted
paragraphs. Now they are associated plain text paragraphs. The
difference is clear in the generated html.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-22 11:06:19 -08:00
Junio C Hamano
f1250edff5 Merge branch 'jc/name' into next
* jc/name:
  core.warnambiguousrefs: warns when "name" is used and both "name" branch and tag exists.
  contrib/git-svn: allow rebuild to work on non-linear remote heads
  http-push: don't assume char is signed
  http-push: add support for deleting remote branches
  Be verbose when !initial commit
  Fix multi-paragraph list items in OPTIONS section
  http-fetch: nicer warning for a server with unreliable 404 status
2006-03-21 00:15:21 -08:00
Francis Daly
3070b603ab Fix multi-paragraph list items in OPTIONS section
This patch makes the html docs right, makes the asciidoc docs a bit odd
but consistent with what is there already, and makes the manpages look
OK using docbook-xsl 1.68, but miss a paragraph separator when using 1.69.

For the manpages, current is like

       -A <author_file>
              Read a file with lines on the form

              username = User's Full Name <email@addr.es>

              and use "User's Full Name <email@addr.es>" as the GIT

With this patch, docbook-xsl v1.68 looks like

       -A <author_file>
              Read a file with lines on the form

                      username = User's Full Name <email@addr.es>

              and use "User's Full Name <email@addr.es>" as the GIT author and

while docbook-xsl v1.69 becomes

       -A <author_file>
              Read a file with lines on the form

                        username = User's Full Name <email@addr.es>
              and use "User's Full Name <email@addr.es>" as the GIT author and

The extra indentation is to keep the v1.69 manpage looking sane.
2006-03-20 14:37:33 -08:00
Junio C Hamano
c816a6bc5a Merge branch 'master' into next
* master:
  3% tighter packs for free
  Rewrite synopsis to clarify the two primary uses of git-checkout.
  Fix minor typo.
  Reference git-commit-tree for env vars.
  Clarify git-rebase example commands.
  Document the default source of template files.
  Call out the two different uses of git-branch and fix a typo.
  Add git-show reference
2006-03-17 20:43:15 -08:00
Jon Loeliger
71bb10336f Rewrite synopsis to clarify the two primary uses of git-checkout.
Fix a few typo/grammar problems.

Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17 20:42:38 -08:00
Jon Loeliger
beb8e13437 Fix minor typo.
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17 20:42:36 -08:00
Jon Loeliger
5bfc4f23bc Reference git-commit-tree for env vars.
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17 20:42:35 -08:00
Jon Loeliger
228382aee4 Clarify git-rebase example commands.
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17 20:42:33 -08:00
Jon Loeliger
81ea3ce2ac Document the default source of template files.
Also explain a bit more about how the template option works.

Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17 20:42:31 -08:00
Jon Loeliger
dd1811199e Call out the two different uses of git-branch and fix a typo.
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17 20:42:30 -08:00
Jon Loeliger
55258b5c20 Add git-show reference
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17 20:42:28 -08:00
Eric Wong
ad0cae4cb9 ls-files: add --abbrev[=<n>] option
Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17 14:10:24 -08:00
Eric Wong
cb85bfe5df ls-tree: add --abbrev[=<n>] option
Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-17 14:10:24 -08:00
Junio C Hamano
41ce93bea4 Merge branch 'jc/fsck'
* jc/fsck:
  fsck-objects: Remove --standalone
2006-03-13 00:04:05 -08:00
Mike McCormack
96ce6d2607 Describe how to add extra mail header lines in mail generated by git-format-patch. 2006-03-09 22:01:10 -08:00
Mike McCormack
a15a44ef6e Document the --attach flag. 2006-03-09 22:01:00 -08:00
Junio C Hamano
7aaa715d0a fsck-objects: Remove --standalone
The fsck-objects command (back then it was called fsck-cache)
used to complain if objects referred to by files in .git/refs/
or objects stored in files under .git/objects/??/ were not found
as stand-alone SHA1 files (i.e.  found in alternate object pools
or packed archives stored under .git/objects/pack).  Back then,
packs and alternates were new curiosity and having everything as
loose objects were the norm.

When we adjusted the behaviour of fsck-cache to consider objects
found in packs are OK, we introduced the --standalone flag as a
backward compatibility measure.

It still correctly checks if your repository is complete and
consists only of loose objects, so in that sense it is doing the
"right" thing, but checking that is pointless these days.  This
commit removes --standalone flag.

See also:

	23676d407c
	8a498a05c3

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09 13:10:31 -08:00
Fredrik Kuivinen
a87cd02ce0 Nicer output from 'git'
[jc: with suggestions by Jan-Benedict Glaw]

Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09 12:03:14 -08:00
Fredrik Kuivinen
7bd7f2804d Remove trailing dot after short description
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09 11:44:11 -08:00
Fredrik Kuivinen
5001422d30 Fix some inconsistencies in the docs
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-09 11:43:58 -08:00
Matthias Urlichs
a541211ef4 cvsimport: Remove master-updating code
The code which tried to update the master branch was somewhat broken.
=> People should do that manually, with "git merge".

Signed-off-by: Matthias Urlichs <smurf@smurf.noris.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-07 17:00:45 -08:00
Junio C Hamano
2dcdb4c697 Merge branch 'sp/checkout'
* sp/checkout:
  Add --temp and --stage=all options to checkout-index.
2006-03-06 20:58:17 -08:00
Francis Daly
e920b56557 Tweak asciidoc output to work with broken docbook-xsl
docbook-xsl v1.68 incorrectly converts "<screen>" from docbook to
manpage by not rendering it verbatim. v1.69 handles it correctly, but
not many current popular distributions ship with it.

asciidoc by default converts "listingblock" to "<screen>". This change
causes asciidoc in git to convert "listingblock" to "<literallayout>", which
both old and new docbook-xsl handle correctly.

The difference can be seen in any manpage which includes a multi-line
example, such as git-branch.

[jc: the original patch was an disaster for html backends, so I made
 it apply only to docbook backends. ]

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05 22:38:12 -08:00
Dmitry V. Levin
bd494fc76b git/Documentation: fix SYNOPSIS style bugs
This trivial patch fixes SYNOPSIS style bugs.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05 17:02:02 -08:00
Jeff Muizelaar
872d001f7f documentation: add 'see also' sections to git-rm and git-add
Pair up git-add and git-rm by adding a 'see also' section that
references the opposite command to each of their documentation files.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05 13:33:13 -08:00
Mark Wooding
4a5d693950 Documentation/Makefile: Some `git-*.txt' files aren't manpages.
In particular, git-tools.txt isn't a manpage, and my Asciidoc gets upset
by it.  The simplest fix is to Remove articles from the list of manpages
the Makefile.

Signed-off-by: Mark Wooding <mdw@distorted.org.uk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05 02:32:13 -08:00
Martin Langhoff
b30cc0daaf cvsserver: updated documentation
... and stripped trailing whitespace to appease the Gods...

Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05 02:22:53 -08:00
Shawn Pearce
de84f99c12 Add --temp and --stage=all options to checkout-index.
Sometimes it is convient for a Porcelain to be able to checkout all
unmerged files in all stages so that an external merge tool can be
executed by the Porcelain or the end-user.  Using git-unpack-file
on each stage individually incurs a rather high penalty due to the
need to fork for each file version obtained.  git-checkout-index -a
--stage=all will now do the same thing, but faster.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05 00:58:13 -08:00
Jeff Muizelaar
46444f514b cosmetics: change from 'See-Also' to 'See Also'
Changes the documentation that uses 'See-Also' to the more common
'See Also' form.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-05 00:57:37 -08:00
Junio C Hamano
d10ed827bc Merge part of 'sp/checkout' 2006-03-04 14:58:11 -08:00
Francis Daly
2eb063c933 AsciiDoc fix for tutorial
RE \^.+\^ becomes <sup>. Not wanted here

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-04 13:50:04 -08:00
Junio C Hamano
21dbe12c76 Merge branch 'lt/rev-list'
* lt/rev-list:
  setup_revisions(): handle -n<n> and -<n> internally.
  git-log (internal): more options.
  git-log (internal): add approxidate.
  Rip out merge-order and make "git log <paths>..." work again.
  Tie it all together: "git log"
  Introduce trivial new pager.c helper infrastructure
  git-rev-list libification: rev-list walking
  Splitting rev-list into revisions lib, end of beginning.
  rev-list split: minimum fixup.
  First cut at libifying revlist generation
2006-03-04 13:21:17 -08:00
Marco Costalba
ed19f36722 Add a Documentation/git-tools.txt
A brief survey of useful git tools, including third-party
and external projects.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-03 23:29:56 -08:00
Jonas Fonseca
c7569b1e00 manpages: insert two missing [verse] markers for multi-line SYNOPSIS
Found with:

	for i in *.txt; do
		grep -A 2 "SYNOPSIS" "$i" | grep -q "^\[verse\]$" && continue
		multiline=$(grep -A 3 "SYNOPSIS" "$i" | tail -n 1)
		test -n "$multiline" && echo "$i: $multiline"
	done

Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-02 23:07:34 -08:00
Junio C Hamano
ec579767e7 Documentation: rev-list --objects-edge
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-02 01:11:31 -08:00
Junio C Hamano
afaa8d66ab Documentation: read-tree --aggressive
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-02 01:11:05 -08:00
Junio C Hamano
8273c79ae2 war on whitespaces: documentation.
We were missing the --whitespace option in the usage string for
git-apply and git-am, so this commit adds them.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-02 00:52:59 -08:00
Junio C Hamano
5343cf1082 Merge branch 'kh/svnimport'
* kh/svnimport:
  Save username -> Full Name <email@addr.es> map file
2006-03-01 21:46:01 -08:00
Linus Torvalds
765ac8ec46 Rip out merge-order and make "git log <paths>..." work again.
Well, assuming breaking --merge-order is fine, here's a patch (on top of
the other ones) that makes

	git log <filename>

actually work, as far as I can tell.

I didn't add the logic for --before/--after flags, but that should be
pretty trivial, and is independent of this anyway.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-01 01:45:50 -08:00
Shawn Pearce
9debe63d10 Teach git-checkout-index to read filenames from stdin.
Since git-checkout-index is often used from scripts which
may have a stream of filenames they wish to checkout it is
more convenient to use --stdin than xargs.  On platforms
where fork performance is currently sub-optimal and
the length of a command line is limited (*cough* Cygwin
*cough*) running a single git-checkout-index process for
a large number of files beats spawning it multiple times
from xargs.

File names are still accepted on the command line if
--stdin is not supplied.  Nothing is performed if no files
are supplied on the command line or by stdin.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-03-01 01:15:31 -08:00
Martin Langhoff
ee75d4cd31 cvsserver: add notes on how to get a checkout under Eclipse 2006-03-01 01:10:26 -08:00
Karl Hasselström
d3cac2c95a Save username -> Full Name <email@addr.es> map file
When the user specifies a username -> Full Name <email@addr.es> map
file with the -A option, save a copy of that file as
$git_dir/svn-authors. When running git-svnimport with an existing GIT
directory, use $git_dir/svn-authors (if it exists) unless a file was
explicitly specified with -A.

Signed-off-by: Karl Hasselström <kha@treskal.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-27 15:27:24 -08:00
Karl Hasselström
80804d0af8 Let git-svnimport's author file use same syntax as git-cvsimport's
git-cvsimport uses a username => Full Name <email@addr.es> mapping
file with this syntax:

  kha=Karl Hasselström <kha@treskal.com>

Since there is no reason to use another format for git-svnimport, use
the same format.

Signed-off-by: Karl Hasselström <kha@treskal.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-27 15:27:21 -08:00
Karl Hasselström
36610b24f1 svnimport: Read author names and emails from a file
Read a file with lines on the form

  username User's Full Name <email@addres.org>

and use "User's Full Name <email@addres.org>" as the GIT author and
committer for Subversion commits made by "username". If encountering a
commit made by a user not in the list, abort.

Signed-off-by: Karl Hasselström <kha@treskal.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-26 21:34:42 -08:00
Karl Hasselström
c55f3fff35 svnimport: Convert the svn:ignore property
Put the value of the svn:ignore property in a regular file when
converting a Subversion repository to GIT. The Subversion and GIT
ignore syntaxes are similar enough that it often just works to set the
filename to .gitignore and do nothing else.

Signed-off-by: Karl Hasselström <kha@treskal.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-26 21:34:42 -08:00
Karl Hasselström
525c0d713c svnimport: Mention -r in usage summary
I added the -r option to git-svnimport some time ago, but forgot to
update the usage summary in the documentation.

Signed-off-by: Karl Hasselström <kha@treskal.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-26 21:34:41 -08:00
Junio C Hamano
98214e96be Merge branch 'ml/cvs'
* ml/cvs:
  Introducing git-cvsserver -- a CVS emulator for git.
2006-02-22 19:20:55 -08:00
Carl Worth
d4a1cab541 Add new git-rm command with documentation
This adds a git-rm command which provides convenience similar to
git-add, (and a bit more since it takes care of the rm as well if
given -f).

Like git-add, git-rm expands the given path names through
git-ls-files. This means it only acts on files listed in the
index. And it does act recursively on directories by default, (no -r
needed as in the case of rm itself). When it recurses, it does not
remove empty directories that are left behind.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-22 17:10:42 -08:00
Martin Langhoff
3fda8c4cc7 Introducing git-cvsserver -- a CVS emulator for git.
git-cvsserver is highly functional. However, not all methods are implemented,
and for those methods that are implemented, not all switches are implemented.
All the common read operations are implemented, and add/remove/commit are
supported.

Testing has been done using both the CLI CVS client, and the Eclipse CVS
plugin. Most functionality works fine with both of these clients.

Currently git-cvsserver only works over SSH connections, see the
Documentation for more details on how to configure your client. It
does not support pserver for anonymous access but it should not be
hard to implement. Anonymous access will need tighter input validation.

In our very informal tests, it seems to be significantly faster than a real
CVS server.

This utility depends on a version of git-cvsannotate that supports -S and on
DBD::SQLite.

Licensed under GPLv2. Copyright The Open University UK.

Authors: Martyn Smith <martyn@catalyst.net.nz>
         Martin Langhoff <martin@catalyst.net.nz>

Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-22 02:17:07 -08:00
Junio C Hamano
752b0fe287 Merge branch 'fix'
* fix:
  git-push: Update documentation to describe the no-refspec behavior.
  format-patch: pretty-print timestamp correctly.
  git-add: Add support for --, documentation, and test.
2006-02-22 00:35:07 -08:00
Junio C Hamano
155d12912f Merge branch 'jc/pack-reuse'
* jc/pack-reuse:
  pack-objects: avoid delta chains that are too long.
  git-repack: allow passing a couple of flags to pack-objects.
  pack-objects: finishing touches.
  pack-objects: reuse data from existing packs.
2006-02-21 22:38:43 -08:00
Junio C Hamano
ee072260db Merge branch 'jc/nostat'
* jc/nostat:
  cache_name_compare() compares name and stage, nothing else.
  "assume unchanged" git: documentation.
  ls-files: split "show-valid-bit" into a different option.
  "Assume unchanged" git: --really-refresh fix.
  ls-files: debugging aid for CE_VALID changes.
  "Assume unchanged" git: do not set CE_VALID with --refresh
  "Assume unchanged" git
2006-02-21 22:33:21 -08:00
Carl Worth
aa064743fa git-push: Update documentation to describe the no-refspec behavior.
It turns out that the git-push documentation didn't describe what it
would do when not given a refspec, (not on the command line, nor in a
remotes file). This is fairly important for the user who is trying to
understand operations such as:

	git clone git://something/some/where
	# hack, hack, hack
	git push origin

I tracked the mystery behavior down to git-send-pack and lifted the
relevant portion of its documentation up to git-push, (namely that all
refs existing both locally and remotely are updated).

Signed-off-by: Carl Worth <cworth@cworth.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-21 22:11:50 -08:00
Carl Worth
c8af25ca01 git-ls-files: Fix, document, and add test for --error-unmatch option.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-21 18:37:36 -08:00
Carl Worth
69a60af5d0 git-rebase: Clarify usage statement and copy it into the actual documentation.
I found a paper thin man page for git-rebase, but was quite happy to
see something much more useful in the usage statement of the script
when I went there to find out how this thing worked. Here it is
cleaned up slightly and expanded a bit into the actual documentation.

Signed-off-by: Carl Worth <cworth@cworth.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-21 17:45:32 -08:00
Carl Worth
60ace8790f git-add: Add support for --, documentation, and test.
This adds support to git-add to allow the common -- to separate
command-line options and file names. It adds documentation and a new
git-add test case as well.

[jc: this should apply to 1.2.X maintenance series, so I reworked
 git-ls-files --error-unmatch test. ]

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-21 17:33:43 -08:00
Junio C Hamano
5102349cc0 Documentation: fix typo in rev-parse --short option description.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-19 10:23:17 -08:00
Junio C Hamano
709a9e5771 Merge fixes up to GIT 1.2.2 2006-02-18 22:55:42 -08:00
Jonas Fonseca
735d80b3bf Document --short and --git-dir in git-rev-parse(1)
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
2006-02-17 17:33:12 -08:00
Junio C Hamano
45d2b286ac SubmittingPatches: note on whitespaces
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-17 16:15:26 -08:00
Junio C Hamano
b867c7c23a git-tag: -l to list tags (usability).
git-tag -l lists all tags, and git-tag -l <pattern> filters the
result with <pattern>.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-17 04:04:39 -08:00
Junio C Hamano
cec2be76d9 git-repack: allow passing a couple of flags to pack-objects.
A new flag -q makes underlying pack-objects less chatty.
A new flag -f forces delta to be recomputed from scratch.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-17 02:11:38 -08:00
Junio C Hamano
ca5381d43e pack-objects: finishing touches.
This introduces --no-reuse-delta option to disable reusing of
existing delta, which is a large part of the optimization
introduced by this series.  This may become necessary if
repeated repacking makes delta chain too long.  With this, the
output of the command becomes identical to that of the older
implementation.  But the performance suffers greatly.

It still allows reusing non-deltified representations; there is
no point uncompressing and recompressing the whole text.

It also adds a couple more statistics output, while squelching
it under -q flag, which the last round forgot to do.

  $ time old-git-pack-objects --stdout >/dev/null <RL
  Generating pack...
  Done counting 184141 objects.
  Packing 184141 objects....................
  real    12m8.530s       user    11m1.450s       sys     0m57.920s
  $ time git-pack-objects --stdout >/dev/null <RL
  Generating pack...
  Done counting 184141 objects.
  Packing 184141 objects.....................
  Total 184141, written 184141 (delta 138297), reused 178833 (delta 134081)
  real    0m59.549s       user    0m56.670s       sys     0m2.400s
  $ time git-pack-objects --stdout --no-reuse-delta >/dev/null <RL
  Generating pack...
  Done counting 184141 objects.
  Packing 184141 objects.....................
  Total 184141, written 184141 (delta 134833), reused 47904 (delta 0)
  real    11m13.830s      user    9m45.240s       sys     0m44.330s

There is one remaining issue when --no-reuse-delta option is not
used.  It can create delta chains that are deeper than specified.

    A<--B<--C<--D   E   F   G

Suppose we have a delta chain A to D (A is stored in full either
in a pack or as a loose object. B is depth1 delta relative to A,
C is depth2 delta relative to B...) with loose objects E, F, G.
And we are going to pack all of them.

B, C and D are left as delta against A, B and C respectively.
So A, E, F, and G are examined for deltification, and let's say
we decided to keep E expanded, and store the rest as deltas like
this:

    E<--F<--G<--A

Oops.  We ended up making D a bit too deep, didn't we?  B, C and
D form a chain on top of A!

This is because we did not know what the final depth of A would
be, when we checked objects and decided to keep the existing
delta.  Unfortunately, deferring the decision until just before
the deltification is not an option.  To be able to make B, C,
and D candidates for deltification with the rest, we need to
know the type and final unexpanded size of them, but the major
part of the optimization comes from the fact that we do not read
the delta data to do so -- getting the final size is quite an
expensive operation.

To prevent this from happening, we should keep A from being
deltified.  But how would we tell that, cheaply?

To do this most precisely, after check_object() runs, each
object that is used as the base object of some existing delta
needs to be marked with the maximum depth of the objects we
decided to keep deltified (in this case, D is depth 3 relative
to A, so if no other delta chain that is longer than 3 based on
A exists, mark A with 3).  Then when attempting to deltify A, we
would take that number into account to see if the final delta
chain that leads to D becomes too deep.

However, this is a bit cumbersome to compute, so we would cheat
and reduce the maximum depth for A arbitrarily to depth/4 in
this implementation.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-17 02:11:38 -08:00
Junio C Hamano
e8a1a11d4e Merge branch 'kh/svn'
* kh/svn:
  git-svnimport: -r adds svn revision number to commit messages
2006-02-14 17:51:50 -08:00
Junio C Hamano
709fb393ca Merge branch 'ra/email'
* ra/email:
  send-email: Add --cc
  send-email: Add some options for controlling how addresses are automatically added to the cc: list.
2006-02-14 17:46:41 -08:00
Karl Hasselström
0a48a344c6 git-svnimport: -r adds svn revision number to commit messages
New -r flag for prepending the corresponding Subversion revision
number to each commit message.

Signed-off-by: Karl Hasselström <kha@treskal.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-14 01:30:43 -08:00
Junio C Hamano
6a9b87972f Merge some proposed fixes
Conflicts:

	Documentation/git-commit.txt - taking the post 1.2.0 semantics.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-13 23:34:58 -08:00
Junio C Hamano
41ac06c7a3 Documentation: git-ls-files asciidocco.
Noticed by Jon Nelson.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-13 21:52:10 -08:00
Ryan Anderson
da140f8bbf send-email: Add --cc
Since Junio used this in an example, and I've personally tried to use it, I
suppose the option should actually exist.

Signed-off-by: Ryan Anderson <ryan@michonline.com>
2006-02-13 03:32:10 -05:00
Junio C Hamano
64491e1ea9 Documentation: git-commit in 1.2.X series defaults to --include.
The documentation was mistakenly describing the --only semantics to
be default.  The 1.2.0 release and its maintenance series 1.2.X will
keep the traditional --include semantics as the default.  Clarify the
situation.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-13 00:32:10 -08:00
Ryan Anderson
a985d595ad send-email: Add some options for controlling how addresses are automatically added to the cc: list.
Signed-off-by: Ryan Anderson <ryan@michonline.com>
2006-02-13 03:32:01 -05:00
Junio C Hamano
4170a19587 git-commit: Now --only semantics is the default.
This changes the "git commit paths..." to default to --only
semantics from traditional --include semantics, as agreed on the
list.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-12 23:55:07 -08:00
kent@lysator.liu.se
5b766ea901 Add howto about separating topics.
This howto consists of a footnote from an email by JC to the git
mailing list (<7vfyms0x4p.fsf@assigned-by-dhcp.cox.net>).

Signed-off-by: Kent Engstrom <kent@lysator.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-12 05:02:42 -08:00
Junio C Hamano
f9666adfea "assume unchanged" git: documentation.
This updates documentation to describe the "assume unchanged"
behaviour.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-12 01:48:47 -08:00
Petr Baudis
7162dff3dd Add support for explicit type specifiers when calling git-repo-config
Currently, git-repo-config will just return the raw value of option
as specified in the config file; this makes things difficult for scripts
calling it, especially if the value is supposed to be boolean.

This patch makes it possible to ask git-repo-config to check if the option
is of the given type (int or bool) and write out the value in its
canonical form. If you do not pass --int or --bool, the behaviour stays
unchanged and the raw value is emitted.

This also incidentally fixes the segfault when option with no value is
encountered.

[jc: tweaked the option parsing a bit to make it easier to see
 that the patch does not change anything but the type stuff in
 the diff output.  Also changed to avoid "foo ? : bar" construct. ]

Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-12 00:26:54 -08:00
Jon Loeliger
147cf31738 Add --diff-filter= documentation paragraph
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-09 12:06:57 -08:00
Petr Baudis
4e783b41e0 Basic documentation for git-show
Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-07 13:19:42 -08:00
Petr Baudis
3904848c6e Document git-diff-tree --always
Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-07 13:19:40 -08:00
Andreas Ericsson
66f04f38f4 format-patch: Remove last vestiges of --mbox option
Don't mention it in docs or --help output.
Remove mbox, date and author variables from git-format-patch.sh.

Use DESCRIPTION text from man-page to update LONG_USAGE output. It's
a bit silly to have two texts saying the same thing in different words,
and I'm too lazy to update both.

Signed-off-by: Andreas Ericsson <ae@op5.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-07 02:09:55 -08:00
Junio C Hamano
130fcca63f git-commit: revamp the git-commit semantics.
- "git commit" without _any_ parameter keeps the traditional
   behaviour.  It commits the current index.

   We commit the whole index even when this form is run from a
   subdirectory.

 - "git commit --include paths..." (or "git commit -i paths...")
   is equivalent to:

   	git update-index --remove paths...
        git commit

 - "git commit paths..." acquires a new semantics.  This is an
   incompatible change that needs user training, which I am
   still a bit reluctant to swallow, but enough people seem to
   have complained that it is confusing to them.  It

   1. refuses to run if $GIT_DIR/MERGE_HEAD exists, and reminds
      trained git users that the traditional semantics now needs
      -i flag.

   2. refuses to run if named paths... are different in HEAD and
      the index (ditto about reminding).  Added paths are OK.

   3. reads HEAD commit into a temporary index file.

   4. updates named paths... from the working tree in this
      temporary index.

   5. does the same updates of the paths... from the working
      tree to the real index.

   6. makes a commit using the temporary index that has the
      current HEAD as the parent, and updates the HEAD with this
      new commit.

 - "git commit --all" can run from a subdirectory, but it updates
   the index with all the modified files and does a whole tree
   commit.

 - In all cases, when the command decides not to create a new
   commit, the index is left as it was before the command is
   run.  This means that the two "git diff" in the following
   sequence:

       $ git diff
       $ git commit -a
       $ git diff

   would show the same diff if you abort the commit process by
   making the commit log message empty.

This commit also introduces much requested --author option.

	$ git commit --author 'A U Thor <author@example.com>'

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-06 23:20:32 -08:00
Junio C Hamano
8389b52b2a git-rerere: reuse recorded resolve.
In a workflow that employs relatively long lived topic branches,
the developer sometimes needs to resolve the same conflict over
and over again until the topic branches are done (either merged
to the "release" branch, or sent out and accepted upstream).

This commit introduces a new command, "git rerere", to help this
process by recording the conflicted automerge results and
corresponding hand-resolve results on the initial manual merge,
and later by noticing the same conflicted automerge and applying
the previously recorded hand resolution using three-way merge.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-06 21:53:11 -08:00
J. Bruce Fields
cc55aaec38 Docs: minor git-push copyediting
Minor git-push copyediting

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-06 21:14:57 -08:00
J. Bruce Fields
85a97d4e10 Docs: move git url and remotes text to separate sections
The sections on git urls and remotes files in the git-fetch,
git-pull, and git-push manpages seem long enough to be worth a
manpage section of their own.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-06 21:14:56 -08:00
J. Bruce Fields
3598a30808 Docs: split up pull-fetch-param.txt
The push and pull man pages include a bunch of shared text from
pull-fetch-param.txt.  This simplifies maintenance somewhat, but
there's actually quite a bit of text that applies only to one or the
other.

So, separate out the push- and pull/fetch-specific text into
pull-fetch-param.txt and git-push.txt, then include the largest chunk
of common stuff (the description of protocols and url's) from
urls.txt.  That cuts some irrelevant stuff from the man pages without
making us duplicate too much.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-06 21:14:55 -08:00
Junio C Hamano
960c7021b3 core-tutorial: adjust to recent reality.
We still talked about HEAD symlinks but these days we use
symrefs by default.

Also 'failed/prevented' message is now gone from the merge
output.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-06 12:27:33 -08:00
Junio C Hamano
a8c44537fe Merge branches 'jc/daemon' and 'mw/http'
* jc/daemon:
  daemon: extend user-relative path notation.
  daemon: Set SO_REUSEADDR on listening sockets.
  daemon: do not forbid user relative paths unconditionally under --base-path

* mw/http:
  http-fetch: Tidy control flow in process_alternate_response
  http: Turn on verbose Curl messages if GIT_CURL_VERBOSE set in environment
  http-fetch: Fix message reporting rename of object file.
  http-fetch: Fix object list corruption in fill_active_slots().
2006-02-05 23:54:14 -08:00
Ryan Anderson
2718435b7b git-send-email: Fully implement --quiet and document it.
Also reorganizes the man page to list options alphabetically.

Signed-off-by: Ryan Anderson <ryan@michonline.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-05 18:23:53 -08:00
Junio C Hamano
603968d22b daemon: extend user-relative path notation.
Earlier, we made --base-path to automatically forbid
user-relative paths, which was probably a mistake.  This
introduces --user-path (or --user-path=path) option to control
the use of user-relative paths independently.  The latter form
of the option can be used to restrict accesses to a part of each
user's home directory, similar to "public_html" some webservers
supports.

If we're invoked with --user-path=FOO option, then a URL of the
form git://~USER/PATH/... resolves to the path HOME/FOO/PATH/...,
where HOME is USER's home directory.

[jc: This is much reworked by me so bugs are mine, but the
 original patch was done by Mark Wooding.]

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-05 16:51:01 -08:00
Junio C Hamano
985cb9cc58 Documentation: git-diff-tree --cc also omits empty commits
A misguided attempt to show logs at all time was inserted only to
the documentation of this flag.  Worse yet, it was not even implemented,
causing more confusion.  Drop it.

We might want to have an option to show --pretty even when there is no
diff output, but that is applicable to all forms of diff, not just --cc.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-02-02 11:28:38 -08:00
Daniel Barkalow
e36f8b6034 Make apply accept the -pNUM option like patch does.
This only applies to traditional diffs, not to git diffs.

Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-31 16:22:01 -08:00
Junio C Hamano
807f900a73 documentation: cvs migration - typofix.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-30 21:01:25 -08:00
J. Bruce Fields
b8bc67cef3 cvs-migration documentation update
Here's some changes to the cvs-migration.txt.  As usual, in my attempt
to make things clearer someone may have found I've made them less so, or
I may have just gotten something wrong; so any review is welcomed.

I can break up this sort of thing into smaller steps if preferred, the
monolothic patch is just a bit simpler for me for this sort of
thing.

I moved the material describing shared repository management from
core-tutorial.txt to cvs-migration.txt, where it seems more appropriate,
and combined two sections to eliminate some redundancy.

I also revised the earlier sections of cvs-migration.txt, mainly trying
to make it more concise.

I've left the last section of cvs-migration.txt (on CVS annotate
alternatives) alone for now.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-30 19:08:33 -08:00
Martin Langhoff
1506fc34f7 cvsexportcommit: add some examples to the documentation
Updated with Randall Schwartz's suggestion.

Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-29 23:25:42 -08:00
Junio C Hamano
36b5b3c659 Merge fixes up to GIT 1.1.6 2006-01-29 17:56:45 -08:00
J. Bruce Fields
f0fff36e82 git push -f documentation
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-29 17:54:43 -08:00
Fredrik Kuivinen
075dd8ee54 git-branch: Documentation fixes
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-29 15:00:46 -08:00
Junio C Hamano
34801cab72 Documentation: diff -c/--cc
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-28 02:26:30 -08:00
Junio C Hamano
93b74bca86 rev-list --remove-empty: add minimum help and doc entry.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-28 00:08:38 -08:00
Junio C Hamano
2796a9de31 git-fetch --upload-pack: disambiguate.
Johannes noticed the recent addition of this new flag
inadvertently took over existing --update-head-ok (-u).  Require
longer abbreviation to this new option which would be needed in
a rare setup.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-26 18:11:06 -08:00
Junio C Hamano
92643a27cc Merge branches 'jc/clone', 'md/env' and 'mo/path' 2006-01-25 00:28:18 -08:00
Michal Ostrowski
2c620a1ad1 git-fetch: pass --upload-pack to fetch-pack
Without this, there is no way to specify a remote executable when
invoking git-pull/git-fetch as there is for git-clone.

[jc: I have a mild suspicion that this is a broken environment (aka
 sysadmin disservice).  It may be legal to configure your sshd to
 spawn named program without involving shell at all, and if your
 sysadmin does so and you have your git programs under your home
 directory, you would need something like this, but then I suspect
 you would need such workaround everywhere, not just git. But we
 have these options we can use to work around the issue, so there
 is no strong reason not to reject this patch, either. ]

Signed-off-by: Michal Ostrowski <mostrows@watson.ibm.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-24 23:17:26 -08:00
Junio C Hamano
4fb66a62ee clone: do not create remotes/origin nor origin branch in a bare repository.
It is simply pointless, since no merges will ever happen in such
a repository.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-24 23:17:06 -08:00
Junio C Hamano
87e80c4b5f git-clone: PG13 --naked option to --bare.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-24 23:17:06 -08:00
Pavel Roskin
941c944999 Don't include ../README in git.txt - make a local copy
asciidoc 7.0.4 and newer considers such includes from parent directory
unsafe.

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-24 23:16:31 -08:00
Junio C Hamano
dcc6e28f70 Documentation: finishing touches to the new tutorial.
We forgot to update the primary link from git.html leading to
the tutorial, and also forgot to build and install the renamed
core-tutorial document.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-22 22:43:59 -08:00
Junio C Hamano
76b927f19f Recommend to remove unused origin in a shared repository.
It is a common mistake to leave an unsed `origin` branch behind
if a shared public repository was created by first cloning from
somewhere else.  Subsequent `git push` into it with the default
"push all the matching ref" would push the `origin` branch from
the developer repository uselessly.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-22 22:05:54 -08:00
J. Bruce Fields
927a503cd0 New tutorial
The current Documentation/tutorial.txt concentrates on the lower-level
git interfaces.  So it's useful to people developing alternative
porcelains, to advanced users, etc., but not so much to beginning users.

I think it makes sense for the main tutorial to address those
beginnning users, so with this patch I'm proposing that we move
Documentation/tutorial.txt to Documentation/core-tutorial.txt and
replace it by a new tutorial.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-22 21:52:33 -08:00
Junio C Hamano
5b2bcc7b2d git-grep: clarification on parameters.
We forgot to make sure that there is no more than one pattern
parameter.  Also when looking for files in a directory called
'--others', it passed that path limiter without preceding the
end-of-options marker '--' to underlying git-ls-files, which
misunderstood it as one of its options instead.

	$ git grep --others -e Meta/Make Meta
	$ git grep -o -e Meta/Make Meta
	$ git grep -o Meta/Make Meta

look for a string "Meta/Make" from untracked files in Meta/
directory.

	$ git grep Meta/Make --others

looks for the same string from tracked files in ./--others
directory.

On the other hand,

	$ git grep -e Meta/Make --others

does not have a freestanding pattern, so everybody is parameter
and there is no path specifier.  It looks for the string in all
the untracked files without any path limiter.

[jc: updated with usability enhancements and documentation
cleanups from Sean.]

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-21 19:34:11 -08:00
Petr Baudis
a325957062 Document git-ls-files --directory
Add the appropriate bit of documentation.

Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-21 19:12:03 -08:00
J. Bruce Fields
8278ac2f4a Minor git-reset and git-commit documentation fixes
Minor copyediting of recent additions to git-commit and git-reset
documentation.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-21 19:11:51 -08:00
Florian Weimer
e72c9f5c54 AsciiDoc fixes for the git-svnimport manpage
Change "SVN:: Perl" to "SVN::Perl", wrap a long line, and clean up the
description of positional arguments.

Signed-off-by: Florian Weimer <fw@deneb.enyo.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-21 12:22:02 -08:00
Luck, Tony
abb9ae95f4 update using-topic-branches
Update documentation to warn users not to create noise in then Linux
history by creating pointless "Auto-update from upstream" merge
commits.

Signed-off-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-20 13:34:12 -08:00
Junio C Hamano
42301e34a2 git-push: fix --tags and document it.
Previously 'git-push --tags dst', used information from
remotes/dst to determine which refs to push; this patch corrects
it, and also documents the --tags option.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-15 23:59:12 -08:00
Andreas Ericsson
ffd97f3a35 git-cvsimport: Add -A <author-conv-file> option
This patch adds the option to specify an author name/email conversion
file in the format

	exon=Andreas Ericsson <ae@op5.se>
	spawn=Simon Pawn <spawn@frog-pond.org>

which will translate the ugly cvs authornames to the more informative
git style.

The info is saved in $GIT_DIR/cvs-authors, so that subsequent
incremental imports will use the same author-info even if no -A
option is specified. If an -A option *is* specified, the info in
$GIT_DIR/cvs-authors is appended/updated appropriately.

Docs updated accordingly.

Signed-off-by: Andreas Ericsson <ae@op5.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-15 21:13:22 -08:00
Junio C Hamano
7cb038a692 Merge branch 'fixo/1.0' 2006-01-15 21:12:12 -08:00
Junio C Hamano
d425142e2a Merge branches 'jc/checkout', 'jc/format-patch', 'jc/octopus', 'jc/sb' and 'jc/clone' 2006-01-15 01:19:09 -08:00
Junio C Hamano
1aa68d6735 show-branch: --current includes the current branch.
With this, the command includes the current branch to the list
of revs to be shown when it is not given on the command line.
This is handy to use in the configuration file like this:

	[showbranch]
	default = --current
	default = heads/*	; primary branches, not topics under
				; subdirectories

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-15 00:04:23 -08:00
Junio C Hamano
ebedc31952 show-branch: make the current branch and merge commits stand out.
This changes the character used to mark the commits that is on the
branch from '+' to '*' for the current branch, to make it stand out.
Also we show '-' for merge commits.

When you have a handful branches with relatively long diversion, it
is easier to see which one is the current branch this way.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-15 00:04:23 -08:00
Junio C Hamano
54f9734ec8 Documentation: show-branch.
Describe showbranch.default configuration item and give an example.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-15 00:04:23 -08:00
Junio C Hamano
8a1a120c55 clone: --naked option.
The new option --naked is to help creating a naked repository
for public consumption.

	$ git clone -l -s --naked \
	  /pub/scm/.../torvalds/linux-2.6.git subproj-2.6.git

is equivalent to this sequence:

	$ git clone -l -s -n /pub/scm/.../torvalds/linux-2.6.git temp
	$ mv temp/.git subproj-2.6.git
	$ rmdir temp

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-14 16:00:32 -08:00
Junio C Hamano
1be0659efc checkout: merge local modifications while switching branches.
* Instead of going interactive, introduce a command line switch
   '-m' to allow merging changes when normal two-way merge by
   read-tree prevents branch switching.

 * Leave the unmerged stages intact if automerge fails, but
   reset index entries of cleanly merged paths to that of the
   new branch, so that "git diff" (not "git diff HEAD") would
   show the local modifications.

 * Swap the order of trees in read-tree three-way merge used in
   the fallback, so that `git diff` to show the conflicts become
   more natural.

 * Describe the new option and give more examples in the documentation.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-13 16:52:37 -08:00
Junio C Hamano
429608fc36 Merge fixes up to GIT 1.1.2 2006-01-13 16:51:21 -08:00
Junio C Hamano
59617ebb74 GIT 1.1.2 2006-01-13 16:47:05 -08:00
Junio C Hamano
a0dfb48af7 Documentation: git-reset - interrupted workflow.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-13 13:17:55 -08:00
Junio C Hamano
cb95bf488b Documentation: git-commit -a
A bit more elaboration on what "update all paths" means.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-13 12:59:21 -08:00
J. Bruce Fields
c2bc6e404d Documentation: clarify fetch parameter descriptions.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-12 22:03:11 -08:00
Tom Prince
0f76f52621 Add --keep option to keep downloaded packs to git-fetch.
Signed-off-by: Tom Prince <tom.prince@ualberta.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-10 22:10:37 -08:00
Junio C Hamano
78ff5cf6b5 GIT 1.1.1 2006-01-10 16:19:11 -08:00
Johannes Schindelin
d5a6aafc90 glossary: explain "master" and "origin"
If you are a long time git user/developer, you forget that to a new git
user, these words have not the same meaning as to you.

[jc: with updates from J. Bruce Fields.]

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-10 16:02:54 -08:00
Petr Baudis
b21c31c9a5 git-daemon --base-path
Tommi Virtanen expressed a wish on #git to be able to use short and elegant
git URLs by making git-daemon 'root' in a given directory. This patch
implements this, causing git-daemon to interpret all paths relative to
the given base path if any is given.

Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-07 21:43:02 -08:00
Junio C Hamano
03febf99bc git-fetch: auto-following tags.
I added things to ls-remote so that Cogito can auto-follow tags
easily and correctly a while ago, but git-fetch did not use the
facility.  Recently added git-describe command relies on
repository keeping up-to-date set of tags, which made it much
more attractive to automatically follow tags, so we do that as
well.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-07 21:33:51 -08:00
Junio C Hamano
5df466c507 Merge fixes up to GIT 1.0.7
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-05 20:54:42 -08:00
Jon Loeliger
c1fe2fe4fe Fix git-symbolic-ref typo in git.txt.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-05 20:29:52 -08:00
Eric Wong
2ed8e622bf Documentation/git-svnimport: document -T and -t switches correctly
The -T and -t switches are swapped in the documentation and actual
code.  I've made the documentation match the code.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-05 20:28:19 -08:00
Jonas Fonseca
353ce81597 Wrap synopsis lines and use [verse] to keep formatting
In addition, also fixes a few synopses to be more consistent and a gitlink.

Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-05 18:44:28 -08:00
Alex Riesen
50b4e0c178 trivial: clarify, what are the config's user.name and user.email about
Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-05 17:23:21 -08:00
Jonas Fonseca
8b32572c74 git-init-db(1): Describe --shared and the idempotent nature of init-db
Based on the recent discussion on the mailing list.

Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-01-05 17:22:31 -08:00
Junio C Hamano
89438677ab Documentation: spell.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-29 01:32:56 -08:00
Junio C Hamano
c06818e20a git-describe: documentation.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-27 17:57:28 -08:00
Junio C Hamano
b74ed49735 Tutorial: mention shared repository management.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-24 00:21:11 -08:00
Junio C Hamano
2414721b19 Merge fixes up to GIT 1.0.4 2005-12-24 00:16:56 -08:00
Junio C Hamano
9a84074d08 ls-files --full-name: usage string and documentation.
Somehow this option was not mentioned anywhere in the
documentation nor the usage string.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-23 15:51:33 -08:00
Junio C Hamano
5f94c730f3 rev-parse: --show-cdup
When --show-prefix is useful, sometimes it is easier to cd up to
the toplevel of the tree.  This is equivalent to:

    git rev-parse --show-prefix | sed -e 's|[^/][^/]*|..|g'

but we do not have to invoke sed for that.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-22 22:35:38 -08:00
Johannes Schindelin
e6c310fd0d git-clone: Support changing the origin branch with -o
Earlier, git-clone stored upstream's master in the branch named 'origin',
possibly overwriting an existing such branch.

Now you can change it by calling git-clone with '-o <other_name>'.

[jc: added ref format check, subdirectory safety, documentation
 and usage string.]

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-22 16:35:37 -08:00
Junio C Hamano
a3431febfe A shared repository should be writable by members.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-20 20:54:28 -08:00
Junio C Hamano
913419fcc6 diff --abbrev: document --abbrev=<n> form.
It was implemented there but was not advertised.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-19 18:32:44 -08:00
Junio C Hamano
47dd0d595d diff: --abbrev option
When I show transcripts to explain how something works, I often
find myself hand-editing the diff-raw output to shorten various
object names in the output.

This adds --abbrev option to the diff family, which shortens
diff-raw output and diff-tree commit id headers.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-19 18:32:44 -08:00
Junio C Hamano
e32faa8adb Remove "octopus".
We still advertise "git resolve" as a standalone command, but never
"git octopus", so nobody should be using it and it is safe to
retire it.  The functionality is still available as a strategy
backend.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-19 18:05:49 -08:00
Junio C Hamano
3aadad1b32 Documentation: stdout of update-hook is connected to /dev/null
Mention that update-hook does not emit its stdout to the sender.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-19 16:38:16 -08:00
Eric Wong
42f4570c86 Documentation/git-archimport: document -o, -a, f, -D options
Also, ensure usage help switches are in the same order.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-19 01:51:16 -08:00
Junio C Hamano
3af849a3da howto/using-topic-branches: Recommend public URL git://git.kernel.org/
Recommending this means subsystem maintainers do not have to log-in
just to resync with upstream.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-19 00:31:08 -08:00
Junio C Hamano
d808111ebd Documentation: typos and small fixes in "everyday".
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-18 12:11:27 -08:00
Junio C Hamano
ad89721508 fetch-pack: -k option to keep downloaded pack.
Split out the functions that deal with the socketpair after
finishing git protocol handshake to receive the packed data into
a separate file, and use it in fetch-pack to keep/explode the
received pack data.  We earlier had something like that on
clone-pack side once, but the list discussion resulted in the
decision that it makes sense to always keep the pack for
clone-pack, so unpacking option is not enabled on the clone-pack
side, but we later still could do so easily if we wanted to with
this change.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-17 23:11:29 -08:00
Junio C Hamano
80248b2e48 Documentation: HTTP needs update-server-info.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-17 11:39:39 -08:00
Junio C Hamano
68283999f8 Forbid pattern maching characters in refnames.
by marking '?', '*', and '[' as bad_ref_char().

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-16 18:23:52 -08:00
Junio C Hamano
3ae854c356 Examples of resetting.
Morten Welinder says examples of resetting is really about
recovering from botched commit/pulls.  I agree that pointers
from commands that cause a reset to be needed in the first place
would be very helpful.

Also reset examples did not mention "pull/merge" cases.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-16 18:23:33 -08:00
Junio C Hamano
8431c4eb09 Documentation: tutorial
At the beginning of tutorial, refer the reader to everyday if
she has not done so yet.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-14 23:08:08 -08:00
Junio C Hamano
31ec6abf88 clone-pack: make it usable for partial branch cloning.
clone-pack had some logic to accept subset of remote refs from
the command line and clone from there.  However, it was never
used in practice and its problems were not found out so far.

This commit changes the command to output the object names of
refs to the standard output instead of making a clone of the
remote repository when explicit <head> parameters are given; the
output format is the same as fetch-pack.

The traditional behaviour of cloning the whole repository by
giving no explicit <head> parameters stays the same.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-14 21:25:22 -08:00
Junio C Hamano
9a26dbd120 Merge branch 'hold/am' 2005-12-14 13:04:43 -08:00
Junio C Hamano
a4adf54d38 Documentation: topic branches
Recommend git over ssh direct to master.kernel.org, instead of
going over rsync to public machines, since this is meant to be a
procedure for kernel subsystem maintainers.

Also fix an obvious typo.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-14 12:57:49 -08:00
H. Peter Anvin
b3f041fb0f git-am support for naked email messages (take 2)
This allows git-am to accept single-message files as well as mboxes.
Unlike the previous version, this one doesn't need to be explicitly told
which one it is; rather, it looks to see if the first line is a From
line and uses it to select mbox mode or not.

I moved the logic to do all this into git-mailsplit, which got a new
user interface as result, although the old interface is still available
for backwards compatibility.

[jc: applied with two obvious fixes.]

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-14 02:04:56 -08:00
Junio C Hamano
01f49e3453 Everyday: a bit more examples.
Talk about the following as well:

 * git fetch --tags
 * Use of "git push" as a one-man distributed development vehicle.
 * Show example of remotes file for pulling and pushing.
 * Annotate git-shell setup.
 * Using Carl's update hook in a CVS-style shared repository.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-14 00:42:45 -08:00
Junio C Hamano
9755afbd94 Documentation: not learning core git commands.
The initial section of tutorial was too heavy on internal
workings for the first-time readers, so rewrite the introductory
section of git(7) to start with "not learning core git commands"
section and refer them to README to grasp the basic concepts,
then Everyday to give overview with task/role oriented examples
for minimum set of commands, and finally the tutorial.

Also add to existing note in the tutorial that many too
technical descriptions can be skipped by a casual reader.

I initially started to review the tutorial, with the objective
of ripping out the detailed technical information altogether,
but I found that the level of details in the initial couple of
sections that talk about refs and the object database in a
hands-on fashion was about rigth, and left all of them there.  I
feel that reading about fsck-index and repack is too abstract
without being aware of these directories and files.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-13 02:38:24 -08:00
Junio C Hamano
803f498c03 Documentation: diff examples.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-13 01:54:15 -08:00
Junio C Hamano
76cead391f Documentation: fix missing links to git(7)
Also move pack protocol description to technical/.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-12 23:55:09 -08:00
Junio C Hamano
1e2ccd3abc Documentation: more examples.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-12 23:24:06 -08:00
Junio C Hamano
180c474647 Everyday: a bit more example.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-12 18:29:53 -08:00
Junio C Hamano
44db136cad Everyday: some examples.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-12 16:20:21 -08:00
Daniel Barkalow
024510c8d9 Allow saving an object from a pipe
In order to support getting data into git with scripts, this adds a
--stdin option to git-hash-object, which will make it read from stdin.

Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-10 18:57:57 -08:00
Junio C Hamano
8b15e2fbc9 Link Everyday GIT to main documentation tree.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-09 23:41:03 -08:00
Junio C Hamano
db9536c856 Everyday GIT with 20 commands
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-09 23:07:29 -08:00
Junio C Hamano
2b86976bfd git-prune: never lose objects reachable from our refs.
Explicit <head> arguments to git-prune replaces, instead of
extends, the list of heads used for reachability analysis by
fsck-objects.  By giving a subset of heads by mistake, objects
reachable only from other heads can be removed, resulting in a
corrupted repository.

This commit stops replacing the list of heads, and makes the
command line arguments to add to them instead for safety.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 23:18:41 -08:00
Junio C Hamano
c82365dc6f Documentation: git-prune
Not replacing but always including our own refs may be more
desirable (and unarguably much safer), but at the same time I
have a suspicion that that might be forbidding a useful usage I
haven't thought of, so...

Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 16:30:24 -08:00
Nikolai Weibull
8c667f4bb8 Documentation/git-read-tree.txt: Add --reset to SYNOPSIS.
Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:16 -08:00
Nikolai Weibull
d839091d13 Documentation/git-tag.txt: Fix the order of sections (DESCRIPTION should come before OPTIONS).
Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:15 -08:00
Nikolai Weibull
03f6c23c5e Documentation/git-update-server-info.txt: Add -f alias for --force to documentation.
Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:15 -08:00
Nikolai Weibull
5dd7342142 Documentation/git-http-fetch.txt: Document the commit-id argument.
Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:15 -08:00
Nikolai Weibull
31f232819f Documentation/git-repack.txt: Add -l and -n.
This adds documentation for the -l and -n options to git-repack.

Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:15 -08:00
Nikolai Weibull
5e34c99d95 Documentation/git-ls-remote.txt: Add -h and -t.
-h and -t are aliases for --heads and --tags to git-ls-remote.

Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:15 -08:00
Nikolai Weibull
6f855371a5 Documentation/git-format-patch.txt: Add --signoff, --check, and long option-names.
The documentation was lacking descriptions for the --signoff and --check
options to git-format-patch.  It was also missing the following long
option-names: --output-directory (-o), --numbered (-n), --keep-subject
(-k), --author (-a), --date (-d), and --mbox (-m).

Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:15 -08:00
Nikolai Weibull
d4ce5f7e50 Add documentation for the --topo-order option to git-show-branch.
Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:14 -08:00
Nikolai Weibull
674b28085e Add documentation for git-revert and git-cherry-pick.
* Added the -e option to the documentation of git-cherry-pick.
* Added the -e and --no-commit option to git-revert.
* Removed redundant case expression for -n as --no-edit (already taken by
  --no-commit).

Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:14 -08:00
Nikolai Weibull
d972217457 Documentation/git-cherry-pick: Add --replay and --no-commit.
Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:14 -08:00
Nikolai Weibull
56e5e9170e Documentation/git-cvsimport.txt: Fix a slight glitch in description heading.
Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:14 -08:00
Nikolai Weibull
e293de3efb Documentation/git-verify-pack.txt: added documentation for --.
The -- option has been added to the documentation of git-verify-pack.

Signed-off-by: Nikolai Weibull <nikolai@bitwi.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-12-08 15:50:14 -08:00