Git development
 help / color / mirror / Atom feed
* [PATCH 01/15] git-format-patch(1): fix stray \ in output
From: Jonathan Nieder @ 2008-07-03  4:47 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, Christian Couder, Jon Loeliger
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

In listing blocks (set off by rows of dashes), the usual
formatting characters of asciidoc are instead rendered verbatim.
When the escaped double-hyphen of olden days is moved into such a
block along with other formatting improvements, it becomes
backslash-dash-dash.

So we remove the backslash.

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
 Documentation/git-format-patch.txt |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt
index 894b82d..3c9192a 100644
--- a/Documentation/git-format-patch.txt
+++ b/Documentation/git-format-patch.txt
@@ -206,7 +206,7 @@ For each commit a separate file is created in the current directory.
 project:
 +
 ------------
-$ git format-patch \--root origin
+$ git format-patch --root origin
 ------------
 
 * The same as the previous one:
-- 
1.5.5.GIT

^ permalink raw reply related

* [PATCH 02/15] Documentation: fix gitlinks
From: Jonathan Nieder @ 2008-07-03  4:54 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: git, Shawn O. Pearce, Dan McGee, Dana L. How, J. Bruce Fields
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
 Documentation/git-repack.txt  |    2 +-
 Documentation/user-manual.txt |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/git-repack.txt b/Documentation/git-repack.txt
index 0d72e83..c956aff 100644
--- a/Documentation/git-repack.txt
+++ b/Documentation/git-repack.txt
@@ -72,7 +72,7 @@ OPTIONS
 	`git-update-server-info`.  This option skips
 	updating local catalog files needed to publish
 	this repository (or a direct copy of it)
-	over HTTP or FTP.  See gitlink:git-update-server-info[1].
+	over HTTP or FTP.  See linkgit:git-update-server-info[1].
 
 --window=[N]::
 --depth=[N]::
diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt
index ca13266..cbfc5d0 100644
--- a/Documentation/user-manual.txt
+++ b/Documentation/user-manual.txt
@@ -1303,7 +1303,7 @@ $ git diff -3 file.txt		# diff against stage 3
 $ git diff --theirs file.txt	# same as the above.
 -------------------------------------------------
 
-The linkgit:git-log[1] and gitk[1] commands also provide special help
+The linkgit:git-log[1] and linkgit:gitk[1] commands also provide special help
 for merges:
 
 -------------------------------------------------
-- 
1.5.5.GIT

^ permalink raw reply related

* Re: [PATCH] Fix describe --tags --long so it does not segfault
From: Junio C Hamano @ 2008-07-03  4:23 UTC (permalink / raw)
  To: Shawn O. Pearce; +Cc: git, Mikael Magnusson, Mark Burton
In-Reply-To: <20080703023245.GA31579@spearce.org>

"Shawn O. Pearce" <spearce@spearce.org> writes:

> If we match a lightweight (non-annotated tag) as the name to
> output and --long was requested we do not have a tag, nor do
> we have a tagged object to display.  Instead we must use the
> object we were passed as input for the long format display.
>
> Reported-by: Mark Burton <markb@ordern.com>
> Backtraced-by: Mikael Magnusson <mikachu@gmail.com>
> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
> ---
>
>  Thanks Mikael, the backtrace really made it easy to figure out
>  what the breakage was here.

Thanks.  I'll squash this in and apply to 'maint'.  Perhaps 1.5.6.2
after the 4th holiday.

diff --git a/t/t6120-describe.sh b/t/t6120-describe.sh
index c6be259..2fb672c 100755
--- a/t/t6120-describe.sh
+++ b/t/t6120-describe.sh
@@ -139,4 +139,6 @@ check_describe "test1-lightweight-*" --tags --match="test1-*"
 
 check_describe "test2-lightweight-*" --tags --match="test2-*"
 
+check_describe "test2-lightweight-*" --long --tags --match="test2-*" HEAD^
+
 test_done

^ permalink raw reply related

* Re: [PATCH] Implement "git stash branch <newbranch> <stash>"
From: Junio C Hamano @ 2008-07-03  4:12 UTC (permalink / raw)
  To: Abhijit Menon-Sen; +Cc: Nanako Shiraishi, git
In-Reply-To: <20080703022316.GA25433@toroid.org>

Abhijit Menon-Sen <ams@toroid.org> writes:

> +branch <branchname> [<stash>]::
> +
> +	Creates and checks out a new branch named `<branchname>` starting from
> +	the commit at which the `<stash>` was originally created, applies the
> +	changes recorded in `<stash>` to the new working tree, and drops the
> +	`<stash>` if that completes successfully. When no `<stash>` is given,
> +	applies the latest one.
> ++
> +This is useful if the branch on which you ran `git stash save` has
> +changed enough that `git stash apply` fails due to conflicts. Since
> +the stash is applied on top of the commit that was HEAD at the time
> +`git stash` was run, it restores the originally stashed state with
> +no conflicts.

Perhaps we would want to replay the stash always with --index for this
application.  By definition this will be conflict-free both in the index
and in the working tree.

I've also toyed with an idea to make <branchname> optional, and detach the
HEAD if <branchname> is not given.  It would be a useful mode of operation
but one problem is that it is _not_ an operation that should be called
"branch" anymore.

^ permalink raw reply

* Re: finding deleted file names
From: Mikael Magnusson @ 2008-07-03  3:18 UTC (permalink / raw)
  To: geoffrey.russell; +Cc: git
In-Reply-To: <93c3eada0807021945la3e565csc50eed4b14feb9c3@mail.gmail.com>

2008/7/3 Geoff Russell <geoffrey.russell@gmail.com>:
> On Thu, Jul 3, 2008 at 10:42 AM, Mikael Magnusson <mikachu@gmail.com> wrote:
>> 2008/7/3 Geoff Russell <geoffrey.russell@gmail.com>:
>>> git diff --diff-filter=D --name-only HEAD@{'7 days ago'}
>>>
>>> finds files deleted during the last 7 days, but if my repository is
>>> only 6 days old I get a
>>> fatal error.
>>>
>>> fatal: bad object HEAD@{7 days ago}
>>>
>>> Is there something that says "since repository creation", ie., go back as far
>>> as possible, but no further? Is there a symbolic name for the initial commit?
>>
>> There's no symbolic name for it, since there might not be only one initial
>> commit. git.git for example has at least three root commits. You will
>> probably get what you want with $(git rev-list HEAD|tail -1). If your
>> history is very large, $(git rev-list --reverse HEAD|head -1) is slightly
>> faster, but usually not enough to offset typing --reverse :).
>
> Thanks for this, but I'm a little confused.
>
> If I do a "git init", there must be a first commit after this? Isn't
> this the first commit, how
> can there be more than one first commit?

In git.git, the gitk subdirectory has a separate root because it was merged
with the subtree merge strategy, so if you go down the second parent of that
merge commit, you'll end up not at the start of the git history. You can
see this if you just fetch any other repo into your current one and merge it.
Just add everything with conflict markers in if it conflicts and commit,
then look at gitk :). (and obviously then revert the merge or whatever).

Btw, after you git init, there are 0 commits, the first commit is created
when you run git commit the first time.

-- 
Mikael Magnusson

^ permalink raw reply

* Re: git describe --tags --long barfs on new tags?
From: Abhijit Menon-Sen @ 2008-07-03  2:49 UTC (permalink / raw)
  To: git; +Cc: Mark Burton, Mikael Magnuson
In-Reply-To: <237967ef0807021256j3e67bceaoecbb8f37112db2ab@mail.gmail.com>

(Sorry for the broken References. I deleted the message before realising
that I wanted to reply to it; and I couldn't easily find an mbox archive
to snarf the whole message from.)

> ~/git[master]$ git tag mb
> ~/git[master]$ git describe
> v1.5.6.1-156-ge903b40
> ~/git[master]$ git describe --tags
> mb
> ~/git[master]$ git describe --tags --long
> Segmentation fault (core dumped)

Not on new tags, but on un-annotated ones (which the --tags brings into
consideration). The appended patch fixes the problem for me, but I'd be
grateful if someone could confirm that it's the right thing to do.

-- ams

diff --git a/builtin-describe.c b/builtin-describe.c
index 3da99c1..7ed4757 100644
--- a/builtin-describe.c
+++ b/builtin-describe.c
@@ -203,8 +203,12 @@ static void describe(const char *arg, int last_one)
 		 * Exact match to an existing ref.
 		 */
 		display_name(n);
-		if (longformat)
-			show_suffix(0, n->tag->tagged->sha1);
+		if (longformat) {
+			const unsigned char *sha1 = n->sha1;
+			if (n->tag)
+				sha1 = n->tag->tagged->sha1;
+			show_suffix(0, sha1);
+		}
 		printf("\n");
 		return;
 	}

^ permalink raw reply related

* Re: finding deleted file names
From: Geoff Russell @ 2008-07-03  2:45 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: git
In-Reply-To: <237967ef0807021812r3ccbfbacg2cb6b12358d2ee2e@mail.gmail.com>

On Thu, Jul 3, 2008 at 10:42 AM, Mikael Magnusson <mikachu@gmail.com> wrote:
> 2008/7/3 Geoff Russell <geoffrey.russell@gmail.com>:
>> git diff --diff-filter=D --name-only HEAD@{'7 days ago'}
>>
>> finds files deleted during the last 7 days, but if my repository is
>> only 6 days old I get a
>> fatal error.
>>
>> fatal: bad object HEAD@{7 days ago}
>>
>> Is there something that says "since repository creation", ie., go back as far
>> as possible, but no further? Is there a symbolic name for the initial commit?
>
> There's no symbolic name for it, since there might not be only one initial
> commit. git.git for example has at least three root commits. You will
> probably get what you want with $(git rev-list HEAD|tail -1). If your
> history is very large, $(git rev-list --reverse HEAD|head -1) is slightly
> faster, but usually not enough to offset typing --reverse :).

Thanks for this, but I'm a little confused.

If I do a "git init", there must be a first commit after this? Isn't
this the first commit, how
can there be more than one first commit?

Cheers,
Geoff

>
> --
> Mikael Magnusson
>



-- 
6 Fifth Ave,
St Morris, S.A. 5068
Australia
Ph: 041 8805 184 / 08 8332 5069

^ permalink raw reply

* Re: [RFC/PATCH 7/7] Documentation formatting and cleanup
From: Jonathan Nieder @ 2008-07-03  2:28 UTC (permalink / raw)
  To: Olivier Marin; +Cc: git, Junio C Hamano, Christian Couder, Jon Loeliger
In-Reply-To: <486A2C8C.5050204@free.fr>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: TEXT/PLAIN; charset=X-UNKNOWN, Size: 722 bytes --]

Olivier Marin wrote:

> Jonathan Nieder a écrit :
> > [184 KB patch online at
> > <http://home.uchicago.edu/~jrnieder/20080701-git-doc-style.txt>]
> 
> You did a lot of:
> 
> > -replaced; you need to use a tool such as linkgit:git-diff[1] or the "pickaxe"
> > +replaced; you need to use a tool such as `git-diff` or the "pickaxe"
> 
> Are those kind of changes really an improvement?

I should have also added

	SEE ALSO
	--------

	linkgit:git-diff[1], ...

but I was trying to keep my changes minimal.  I'll send some suggestions
for see also sections ome time this week; I haven't found time to prune
down the lists of cross references I have in my tree now.  Thanks for
the reminder.

Jonathan

^ permalink raw reply

* Re: [RFC/PATCH 7/7] Documentation formatting and cleanup
From: Jonathan Nieder @ 2008-07-03  2:09 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Olivier Marin, git, Christian Couder, Jon Loeliger
In-Reply-To: <7vej6dmgps.fsf@gitster.siamese.dyndns.org>

Junio C Hamano writes:

> Olivier Marin <dkr+ml.git@free.fr> writes:
>
>> Also, in Documentation/gitdiffcore.txt, you did:
>>
>>> -These are applied in sequence.  The set of filepairs git-diff-\*
>>> +These are applied in sequence.  The set of filepairs `git-diff-*`
>>
>> but the file does not compile, now.
> 
> There are other places with the same breakage.

Sorry about that. Thanks for the fix.

Do you know of a good page to read to learn that subset of Asciidoc 7
we use?  Right now, I am wondering: why wouldn't `git-diff-\*` work?

Jonathan

^ permalink raw reply

* Re: [PATCH 3/7] Documentation: complicate example of "man git-command"
From: Jonathan Nieder @ 2008-07-03  1:45 UTC (permalink / raw)
  To: J. Bruce Fields
  Cc: Junio C Hamano, git, Christian Couder, Nguyen Thai Ngoc Duy,
	Jon Loeliger
In-Reply-To: <20080702213148.GA26921@fieldses.org>

J. Bruce Fields wrote:

> On Tue, Jul 01, 2008 at 04:54:53PM -0700, Junio C Hamano wrote:
>
>> We would want to mention the typesetting convention early in the manuals
>> (git(7), gittutorial(7) and user-manual.html) as well, so how about...
>> 
>> 	Conventions used in this document
>>         ---------------------------------
>> 
>> 	When talking about a git subcommand 'cmd', this documentation
>> 	typesets the name of it like 'git-cmd', and that is the name you
>> 	ask for its manual page.
>> 
>>         Examples are typeset like this: `$ git cmd` (`$` is your command
>> 	prompt, do not actually type it to your shell).  Note that a
>> 	subcommand is specified as the first parameter to the 'git'
>> 	program when you actually run it from the command line.
> 
> I'm not convinced this last sentence is necessary.

I agree, but I think it doesn't hurt. I think the point was to
establish the word and concept "subcommand".

> > [example showing typographical conventions]
> 
> Typographical conventions shouldn't need so much explanation.

Yes, I suppose. I'm used to printed manuals having a page on
the meaning of different typefaces inside, but that's a bit
of a different situation.

> I'm curious: Jonathan, was this the original patch the result of a
> real-life instance of confusion?  What happened?

No, I'm actually a bit ashamed to have sent the patch... I was just
changing `git subcommand` to `git-subcommand` wherever it was the name
of a command, rather than the command line to run it, that was in
question. Consistency would have made the old example awkward, so I
looked around for alternatives.

Why worry about whether the man pages have no consistent rule about
dashes? Since it is not obvious why the man pages use the dashed form
when they do, I think a fraction of people will naturally use the
dashed form by default. That means trouble once Git 1.6.0 comes out
(e.g. see Ingo's recent post
<http://thread.gmane.org/gmane.comp.version-control.git/87012/focus=87020>).

Here's a patch implementing Junio's suggestion, because I do like it.
Please let me know what you think (especially ideas for making it
shorter).

Thanks for all your thoughts so far. Sorry I took so long to get back.

--- %< --- %< --- %< ----
Subject: gittutorial(7): add "Conventions used in this document" section
    
The manual page for the git subcommand invoked as "git clone" is
named git-clone(1), and similarly for the rest of the git
subcommands. This patch should make the convention a little
clearer when it is introduced at the beginning of gittutorial(7).

Thanks to Junio C Hamano for the idea and wording.

It remains to make an analogous change for user-manual.html
and maybe git(1).

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
 Documentation/gittutorial.txt |   35 ++++++++++++++++++++++++++++++-----
 1 files changed, 30 insertions(+), 5 deletions(-)

diff --git a/Documentation/gittutorial.txt
b/Documentation/gittutorial.txt
index 036a27c..51ad814 100644
--- a/Documentation/gittutorial.txt
+++ b/Documentation/gittutorial.txt
@@ -19,12 +19,37 @@ If you are instead primarily interested in using
git to fetch a project,
 for example, to test the latest version, you may prefer to start with
 the first two chapters of link:user-manual.html[The Git User's Manual].
 
-First, note that you can get documentation for a command such as
-`git log --graph` with:
+Conventions used in this document
+---------------------------------
 
-------------------------------------------------
-$ man git-log
-------------------------------------------------
+When discussing a git subcommand 'cmd', this documentation
+typesets the name of it like 'git-cmd', and that is the name you
+ask for its manual page by.
+
+Examples are typeset like this: `$ git cmd`. (`$` is your command
+prompt; do not actually type it to your shell.) A subcommand
+is specified as the first parameter to the 'git' program
+when you actually run it from the command line.
+
+So a typical command description may go like this:
+
+To propagate the changes you made back to the original subversion
+repository, you would use the 'git-svn dcommit' command. It does
+these things (long description here).  Some examples:
+
+------------
+$ ... some example command sequence ...
+$ git svn dcommit
+------------
+
+For full details, type:
+
+------------
+$ man git-svn
+------------
+
+Introducing yourself to git
+---------------------------
 
 It is a good idea to introduce yourself to git with your name and
 public email address before doing any operation.  The easiest
-- 
1.5.5.GIT

^ permalink raw reply related

* [PATCH] Implement "git stash branch <newbranch> <stash>"
From: Abhijit Menon-Sen @ 2008-07-03  6:16 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Nanako Shiraishi, git
In-Reply-To: <7v63rn61yj.fsf@gitster.siamese.dyndns.org>

Restores the stashed state on a new branch rooted at the commit on which
the stash was originally created, so that conflicts caused by subsequent
changes on the original branch can be dealt with.

(Thanks to Junio for this nice idea.)

Signed-off-by: Abhijit Menon-Sen <ams@toroid.org>
---
 Documentation/git-stash.txt |   19 ++++++++++++++++++-
 git-stash.sh                |   21 +++++++++++++++++++++
 2 files changed, 39 insertions(+), 1 deletions(-)

(Reposting with --index and the missing Signed-off-by added.)

diff --git a/Documentation/git-stash.txt b/Documentation/git-stash.txt
index 23ac331..a4cbd0c 100644
--- a/Documentation/git-stash.txt
+++ b/Documentation/git-stash.txt
@@ -8,8 +8,11 @@ git-stash - Stash the changes in a dirty working directory away
 SYNOPSIS
 --------
 [verse]
-'git stash' (list | show [<stash>] | apply [<stash>] | clear | drop [<stash>] | pop [<stash>])
+'git stash' list
+'git stash' (show | apply | drop | pop ) [<stash>]
+'git stash' branch <branchname> [<stash>]
 'git stash' [save [<message>]]
+'git stash' clear
 
 DESCRIPTION
 -----------
@@ -81,6 +84,20 @@ tree's changes, but also the index's ones. However, this can fail, when you
 have conflicts (which are stored in the index, where you therefore can no
 longer apply the changes as they were originally).
 
+branch <branchname> [<stash>]::
+
+	Creates and checks out a new branch named `<branchname>` starting from
+	the commit at which the `<stash>` was originally created, applies the
+	changes recorded in `<stash>` to the new working tree and index, then
+	drops the `<stash>` if that completes successfully. When no `<stash>`
+	is given, applies the latest one.
++
+This is useful if the branch on which you ran `git stash save` has
+changed enough that `git stash apply` fails due to conflicts. Since
+the stash is applied on top of the commit that was HEAD at the time
+`git stash` was run, it restores the originally stashed state with
+no conflicts.
+
 clear::
 	Remove all the stashed states. Note that those states will then
 	be subject to pruning, and may be difficult or impossible to recover.
diff --git a/git-stash.sh b/git-stash.sh
index 4938ade..889445c 100755
--- a/git-stash.sh
+++ b/git-stash.sh
@@ -218,6 +218,23 @@ drop_stash () {
 	git rev-parse --verify "$ref_stash@{0}" > /dev/null 2>&1 || clear_stash
 }
 
+apply_to_branch () {
+	have_stash || die 'Nothing to apply'
+
+	test -n "$1" || die 'No branch name specified'
+	branch=$1
+
+	if test -z "$2"
+	then
+		set x "$ref_stash@{0}"
+	fi
+	stash=$2
+
+	git-checkout -b $branch $stash^ &&
+	apply_stash --index $stash &&
+	drop_stash $stash
+}
+
 # Main command set
 case "$1" in
 list)
@@ -264,6 +281,10 @@ pop)
 		drop_stash "$@"
 	fi
 	;;
+branch)
+	shift
+	apply_to_branch "$@"
+	;;
 *)
 	if test $# -eq 0
 	then
-- 
1.5.6

^ permalink raw reply related

* [PATCH 15/15] manpages: use teletype font for sample command lines
From: Jonathan Nieder @ 2008-07-03  6:06 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: git, Christian Couder, Matthieu Moy, Olivier Marin,
	J. Bruce Fields
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

I think that some of these uses of italics were meant to be
rendered in quotation marks, anyway.

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
 Documentation/git-gui.txt          |    2 +-
 Documentation/git-help.txt         |    2 +-
 Documentation/git-reflog.txt       |    4 ++--
 Documentation/git.txt              |    4 ++--
 Documentation/gitcore-tutorial.txt |    2 +-
 5 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/Documentation/git-gui.txt b/Documentation/git-gui.txt
index a73201d..0e650f4 100644
--- a/Documentation/git-gui.txt
+++ b/Documentation/git-gui.txt
@@ -71,7 +71,7 @@ git gui citool::
 
 git citool::
 
-	Same as 'git gui citool' (above).
+	Same as `git gui citool` (above).
 
 git gui browser maint::
 
diff --git a/Documentation/git-help.txt b/Documentation/git-help.txt
index d5b20f8..f414583 100644
--- a/Documentation/git-help.txt
+++ b/Documentation/git-help.txt
@@ -23,7 +23,7 @@ If a git command is named, a manual page for that command is brought
 up. The 'man' program is used by default for this purpose, but this
 can be overridden by other options or configuration variables.
 
-Note that 'git --help ...' is identical as 'git help ...' because the
+Note that `git --help ...` is identical to `git help ...` because the
 former is internally converted into the latter.
 
 OPTIONS
diff --git a/Documentation/git-reflog.txt b/Documentation/git-reflog.txt
index 1710626..146d7f5 100644
--- a/Documentation/git-reflog.txt
+++ b/Documentation/git-reflog.txt
@@ -36,7 +36,7 @@ The subcommand "show" (which is also the default, in the absence of any
 subcommands) will take all the normal log options, and show the log of
 the reference provided in the command-line (or `HEAD`, by default).
 The reflog will cover all recent actions (HEAD reflog records branch switching
-as well).  It is an alias for 'git log -g --abbrev-commit --pretty=oneline';
+as well).  It is an alias for `git log -g --abbrev-commit --pretty=oneline`;
 see linkgit:git-log[1].
 
 The reflog is useful in various git commands, to specify the old value
@@ -46,7 +46,7 @@ point to one week ago", and so on. See linkgit:git-rev-parse[1] for
 more details.
 
 To delete single entries from the reflog, use the subcommand "delete"
-and specify the _exact_ entry (e.g. ``git reflog delete master@\{2\}'').
+and specify the _exact_ entry (e.g. "`git reflog delete master@\{2\}`").
 
 
 OPTIONS
diff --git a/Documentation/git.txt b/Documentation/git.txt
index 4d54791..92c0884 100644
--- a/Documentation/git.txt
+++ b/Documentation/git.txt
@@ -135,8 +135,8 @@ OPTIONS
 +
 Other options are available to control how the manual page is
 displayed. See linkgit:git-help[1] for more information,
-because 'git --help ...' is converted internally into 'git
-help ...'.
+because `git --help ...` is converted internally into `git
+help ...`.
 
 --exec-path::
 	Path to wherever your core git programs are installed.
diff --git a/Documentation/gitcore-tutorial.txt b/Documentation/gitcore-tutorial.txt
index dd6a268..a2b9293 100644
--- a/Documentation/gitcore-tutorial.txt
+++ b/Documentation/gitcore-tutorial.txt
@@ -1655,7 +1655,7 @@ branch before these two merges by resetting it to 'master~2':
 $ git reset --hard master~2
 ------------
 
-You can make sure 'git show-branch' matches the state before
+You can make sure `git show-branch` matches the state before
 those two 'git-merge' you just did.  Then, instead of running
 two 'git-merge' commands in a row, you would merge these two
 branch heads (this is known as 'making an Octopus'):
-- 
1.5.5.GIT

^ permalink raw reply related

* Re: RFC: grafts generalised
From: Johannes Sixt @ 2008-07-03  6:02 UTC (permalink / raw)
  To: Stephen R. van den Berg; +Cc: Dmitry Potapov, git
In-Reply-To: <20080702181021.GD16235@cuci.nl>

Stephen R. van den Berg schrieb:
> Dmitry Potapov wrote:
>> On second thought, it may be not necessary. You can extract an old commit
>> object, edit it, put it into Git with a new SHA1, and then use the graft file to
>> replace all references from an old to a new one. And you will be able to see
>> changes immediately in gitk.
> 
> Hmmmm, interesting thought.  That just might solve my problem.

I don't think it would.

You want to apply a patch through a part of the history. To do that, it is
not sufficient to apply the patch to only one commit/tree and then fake
parenthood of its child commits. You still need to apply the patch to all
children.

-- Hannes

^ permalink raw reply

* [PATCH 11/15] manpages: italicize git command names (which were in teletype font)
From: Jonathan Nieder @ 2008-07-03  5:45 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: git, Christian Couder, Nguyen Thai Ngoc Duy, Jon Loeliger,
	Dan McGee, J. Bruce Fields, Olivier Marin
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

This patch is huge (256 KB), so I am not sending it. You can find it at
<http://home.uchicago.edu/~jrnieder/20080703-git-italics.txt>.

The names of git commands are not meant to be entered at the
commandline; they are just names. So we render them in italics,
as is usual for command names in manpages.

Using

	doit () {
	  perl -e 'for (<>) { s/\`(git-[^\`.]*)\`/'\''\1'\''/g; print }'
	}
	for i in git*.txt config.txt diff*.txt blame*.txt fetch*.txt i18n.txt \
	        merge*.txt pretty*.txt pull*.txt rev*.txt urls*.txt
	do
	  doit <"$i" >"$i+" && mv "$i+" "$i"
	done
	git diff

.

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>

	My script missed some spots, but I don't think there were
	any false positives. (I hope there weren't.)

 Documentation/config.txt                |   56 ++++++------
 Documentation/fetch-options.txt         |    8 +-
 Documentation/git-am.txt                |   14 ++--
 Documentation/git-apply.txt             |   10 +-
 Documentation/git-archimport.txt        |   12 +-
 Documentation/git-archive.txt           |    6 +-
 Documentation/git-bisect.txt            |    6 +-
 Documentation/git-blame.txt             |    8 +-
 Documentation/git-branch.txt            |    8 +-
 Documentation/git-bundle.txt            |   26 +++---
 Documentation/git-check-ref-format.txt  |    2 +-
 Documentation/git-checkout-index.txt    |    8 +-
 Documentation/git-checkout.txt          |    4 +-
 Documentation/git-cherry-pick.txt       |    2 +-
 Documentation/git-cherry.txt            |    6 +-
 Documentation/git-citool.txt            |    4 +-
 Documentation/git-clean.txt             |    4 +-
 Documentation/git-clone.txt             |    6 +-
 Documentation/git-commit-tree.txt       |    2 +-
 Documentation/git-commit.txt            |   20 ++--
 Documentation/git-config.txt            |   12 +-
 Documentation/git-cvsexportcommit.txt   |    2 +-
 Documentation/git-cvsimport.txt         |   18 ++--
 Documentation/git-cvsserver.txt         |   38 ++++----
 Documentation/git-daemon.txt            |   40 ++++----
 Documentation/git-describe.txt          |    6 +-
 Documentation/git-diff-files.txt        |    2 +-
 Documentation/git-diff-index.txt        |   20 ++--
 Documentation/git-diff-tree.txt         |   10 +-
 Documentation/git-fast-export.txt       |    8 +-
 Documentation/git-fast-import.txt       |   20 ++--
 Documentation/git-fetch-pack.txt        |   14 ++--
 Documentation/git-fetch.txt             |    2 +-
 Documentation/git-filter-branch.txt     |   14 ++--
 Documentation/git-fmt-merge-msg.txt     |    4 +-
 Documentation/git-for-each-ref.txt      |    2 +-
 Documentation/git-format-patch.txt      |    6 +-
 Documentation/git-fsck.txt              |    4 +-
 Documentation/git-gc.txt                |   20 ++--
 Documentation/git-get-tar-commit-id.txt |    6 +-
 Documentation/git-grep.txt              |    2 +-
 Documentation/git-gui.txt               |   20 ++--
 Documentation/git-hash-object.txt       |    2 +-
 Documentation/git-help.txt              |    6 +-
 Documentation/git-http-fetch.txt        |    2 +-
 Documentation/git-imap-send.txt         |    2 +-
 Documentation/git-index-pack.txt        |    8 +-
 Documentation/git-init.txt              |    6 +-
 Documentation/git-instaweb.txt          |    2 +-
 Documentation/git-log.txt               |    4 +-
 Documentation/git-ls-files.txt          |    6 +-
 Documentation/git-ls-remote.txt         |    2 +-
 Documentation/git-mailinfo.txt          |    4 +-
 Documentation/git-merge-base.txt        |    4 +-
 Documentation/git-merge-file.txt        |   10 +-
 Documentation/git-merge-index.txt       |    8 +-
 Documentation/git-merge-one-file.txt    |    4 +-
 Documentation/git-merge.txt             |   16 ++--
 Documentation/git-mergetool.txt         |   16 ++--
 Documentation/git-name-rev.txt          |    6 +-
 Documentation/git-pack-objects.txt      |    6 +-
 Documentation/git-pack-redundant.txt    |    2 +-
 Documentation/git-parse-remote.txt      |    2 +-
 Documentation/git-patch-id.txt          |    2 +-
 Documentation/git-peek-remote.txt       |    6 +-
 Documentation/git-prune.txt             |   14 ++--
 Documentation/git-pull.txt              |   10 +-
 Documentation/git-push.txt              |    4 +-
 Documentation/git-read-tree.txt         |   42 ++++----
 Documentation/git-rebase.txt            |   26 +++---
 Documentation/git-receive-pack.txt      |   12 +-
 Documentation/git-repack.txt            |   14 ++--
 Documentation/git-rerere.txt            |   28 +++---
 Documentation/git-reset.txt             |    2 +-
 Documentation/git-rev-list.txt          |    6 +-
 Documentation/git-rev-parse.txt         |   24 +++---
 Documentation/git-revert.txt            |    4 +-
 Documentation/git-rm.txt                |    4 +-
 Documentation/git-send-pack.txt         |   10 +-
 Documentation/git-sh-setup.txt          |    2 +-
 Documentation/git-shell.txt             |    2 +-
 Documentation/git-shortlog.txt          |    2 +-
 Documentation/git-show-branch.txt       |    2 +-
 Documentation/git-show-index.txt        |    4 +-
 Documentation/git-show-ref.txt          |    4 +-
 Documentation/git-show.txt              |    6 +-
 Documentation/git-stash.txt             |    6 +-
 Documentation/git-status.txt            |    6 +-
 Documentation/git-submodule.txt         |    4 +-
 Documentation/git-svn.txt               |  106 ++++++++++----------
 Documentation/git-symbolic-ref.txt      |    2 +-
 Documentation/git-tag.txt               |    8 +-
 Documentation/git-tar-tree.txt          |    6 +-
 Documentation/git-update-index.txt      |   22 ++--
 Documentation/git-upload-archive.txt    |    2 +-
 Documentation/git-upload-pack.txt       |    6 +-
 Documentation/git-var.txt               |    2 +-
 Documentation/git-verify-pack.txt       |    2 +-
 Documentation/git-verify-tag.txt        |    2 +-
 Documentation/git-web--browse.txt       |    6 +-
 Documentation/git-whatchanged.txt       |    4 +-
 Documentation/git-write-tree.txt        |    8 +-
 Documentation/git.txt                   |    8 +-
 Documentation/gitattributes.txt         |   16 ++--
 Documentation/gitcore-tutorial.txt      |  162 +++++++++++++++---------------
 Documentation/gitcvs-migration.txt      |   12 +-
 Documentation/gitdiffcore.txt           |   30 +++---
 Documentation/githooks.txt              |   74 +++++++-------
 Documentation/gitignore.txt             |    4 +-
 Documentation/gitk.txt                  |    2 +-
 Documentation/gitrepository-layout.txt  |   18 ++--
 Documentation/gittutorial-2.txt         |   16 ++--
 Documentation/gittutorial.txt           |   42 ++++----
 Documentation/i18n.txt                  |    4 +-
 Documentation/merge-options.txt         |    4 +-
 Documentation/pull-fetch-param.txt      |    8 +-
 Documentation/urls-remotes.txt          |    4 +-
 117 files changed, 713 insertions(+), 713 deletions(-)

patch at <http://home.uchicago.edu/~jrnieder/20080703-git-italics.txt>

^ permalink raw reply

* [PATCH 12/15] manpages: italicize gitk's name (where it was in teletype font)
From: Jonathan Nieder @ 2008-07-03  5:49 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: git, Jonas Fonseca, J. Bruce Fields, Olivier Marin, Jonas Fonseca
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

The name `gitk` is sometimes meant to be entered at the command
prompt, but most uses are just referring to the program with that
name (not the incantation to start it).

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
 Documentation/git-bisect.txt       |    2 +-
 Documentation/git-gui.txt          |    4 ++--
 Documentation/gitcore-tutorial.txt |    2 +-
 Documentation/gittutorial.txt      |    2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/Documentation/git-bisect.txt b/Documentation/git-bisect.txt
index c794914..c7981ef 100644
--- a/Documentation/git-bisect.txt
+++ b/Documentation/git-bisect.txt
@@ -98,7 +98,7 @@ During the bisection process, you can say
 $ git bisect visualize
 ------------
 
-to see the currently remaining suspects in `gitk`.  `visualize` is a bit
+to see the currently remaining suspects in 'gitk'.  `visualize` is a bit
 too long to type and `view` is provided as a synonym.
 
 If 'DISPLAY' environment variable is not set, 'git-log' is used
diff --git a/Documentation/git-gui.txt b/Documentation/git-gui.txt
index f067772..a73201d 100644
--- a/Documentation/git-gui.txt
+++ b/Documentation/git-gui.txt
@@ -16,9 +16,9 @@ on allowing users to make changes to their repository by making
 new commits, amending existing ones, creating branches, performing
 local merges, and fetching/pushing to remote repositories.
 
-Unlike `gitk`, 'git-gui' focuses on commit generation
+Unlike 'gitk', 'git-gui' focuses on commit generation
 and single file annotation and does not show project history.
-It does however supply menu actions to start a `gitk` session from
+It does however supply menu actions to start a 'gitk' session from
 within 'git-gui'.
 
 'git-gui' is known to work on all popular UNIX systems, Mac OS X,
diff --git a/Documentation/gitcore-tutorial.txt b/Documentation/gitcore-tutorial.txt
index 2bbe7de..3eba973 100644
--- a/Documentation/gitcore-tutorial.txt
+++ b/Documentation/gitcore-tutorial.txt
@@ -878,7 +878,7 @@ means: normally it will just show you your current `HEAD`) and their
 histories. You can also see exactly how they came to be from a common
 source.
 
-Anyway, let's exit `gitk` (`^Q` or the File menu), and decide that we want
+Anyway, let's exit 'gitk' (`^Q` or the File menu), and decide that we want
 to merge the work we did on the `mybranch` branch into the `master`
 branch (which is currently our `HEAD` too). To do that, there's a nice
 script called 'git-merge', which wants to know which branches you want
diff --git a/Documentation/gittutorial.txt b/Documentation/gittutorial.txt
index 930f690..85abc6e 100644
--- a/Documentation/gittutorial.txt
+++ b/Documentation/gittutorial.txt
@@ -554,7 +554,7 @@ then merged back together, the order in which 'git-log' presents
 those commits is meaningless.
 
 Most projects with multiple contributors (such as the linux kernel,
-or git itself) have frequent merges, and `gitk` does a better job of
+or git itself) have frequent merges, and 'gitk' does a better job of
 visualizing their history.  For example,
 
 -------------------------------------
-- 
1.5.5.GIT

^ permalink raw reply related

* [PATCH 10/15] manpages: italicize command names
From: Jonathan Nieder @ 2008-07-03  5:37 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: git, Christian Couder, Nguyen Thai Ngoc Duy, Jon Loeliger,
	Dan McGee, J. Bruce Fields, Olivier Marin
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

This includes nongit commands like RCS 'merge'.  This patch only
italicizes names of commands if they had no formatting before.

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
	The escaping under "log.date" in config.txt works for me
	with asciidoc 8.2.6 and ASCIIDOC8=YesPlease.  Will it work
	on asciidoc 7?

 Documentation/config.txt          |    4 ++--
 Documentation/git-apply.txt       |    6 +++---
 Documentation/git-merge-file.txt  |    2 +-
 Documentation/git-merge-index.txt |    2 +-
 Documentation/git-rerere.txt      |    4 ++--
 Documentation/gitdiffcore.txt     |    4 ++--
 6 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/Documentation/config.txt b/Documentation/config.txt
index 5a98a5b..84a0e77 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -568,7 +568,7 @@ diff.external::
 
 diff.renameLimit::
 	The number of files to consider when performing the copy/rename
-	detection; equivalent to the git-diff option '-l'.
+	detection; equivalent to the 'git-diff' option '-l'.
 
 diff.renames::
 	Tells git to detect renames.  If set to any boolean value, it
@@ -849,7 +849,7 @@ instaweb.port::
 
 log.date::
 	Set default date-time mode for the log command. Setting log.date
-	value is similar to using git-log's --date option. The value is one of the
+	value is similar to using 'git-log'\'s --date option. The value is one of the
 	following alternatives: {relative,local,default,iso,rfc,short}.
 	See linkgit:git-log[1].
 
diff --git a/Documentation/git-apply.txt b/Documentation/git-apply.txt
index fbe1130..b2f909d 100644
--- a/Documentation/git-apply.txt
+++ b/Documentation/git-apply.txt
@@ -18,7 +18,7 @@ SYNOPSIS
 
 DESCRIPTION
 -----------
-Reads supplied diff output and applies it on a git index file
+Reads supplied 'diff' output and applies it on a git index file
 and a work tree.
 
 OPTIONS
@@ -165,9 +165,9 @@ behavior:
 * `error-all` is similar to `error` but shows all errors.
 
 --inaccurate-eof::
-	Under certain circumstances, some versions of diff do not correctly
+	Under certain circumstances, some versions of 'diff' do not correctly
 	detect a missing new-line at the end of the file. As a result, patches
-	created by such diff programs do not record incomplete lines
+	created by such 'diff' programs do not record incomplete lines
 	correctly. This option adds support for applying such patches by
 	working around this bug.
 
diff --git a/Documentation/git-merge-file.txt b/Documentation/git-merge-file.txt
index 2a033dd..b5eb630 100644
--- a/Documentation/git-merge-file.txt
+++ b/Documentation/git-merge-file.txt
@@ -93,7 +93,7 @@ Written by Johannes Schindelin <johannes.schindelin@gmx.de>
 Documentation
 --------------
 Documentation by Johannes Schindelin and the git-list <git@vger.kernel.org>,
-with parts copied from the original documentation of RCS merge.
+with parts copied from the original documentation of RCS 'merge'.
 
 GIT
 ---
diff --git a/Documentation/git-merge-index.txt b/Documentation/git-merge-index.txt
index 4368084..4f04bbb 100644
--- a/Documentation/git-merge-index.txt
+++ b/Documentation/git-merge-index.txt
@@ -41,7 +41,7 @@ processes them in turn only stopping if merge returns a non-zero exit
 code.
 
 Typically this is run with a script calling git's imitation of
-the merge command from the RCS package.
+the 'merge' command from the RCS package.
 
 A sample script called `git-merge-one-file` is included in the
 distribution.
diff --git a/Documentation/git-rerere.txt b/Documentation/git-rerere.txt
index ae2b2b5..30ec68d 100644
--- a/Documentation/git-rerere.txt
+++ b/Documentation/git-rerere.txt
@@ -7,7 +7,7 @@ git-rerere - Reuse recorded resolution of conflicted merges
 
 SYNOPSIS
 --------
-'git rerere' [clear|diff|status|gc]
+'git rerere' ['clear'|'diff'|'status'|'gc']
 
 DESCRIPTION
 -----------
@@ -49,7 +49,7 @@ conflicts.  Additional arguments are passed directly to the system
 
 'status'::
 
-Like diff, but this only prints the filenames that will be tracked
+Like 'diff', but this only prints the filenames that will be tracked
 for resolutions.
 
 'gc'::
diff --git a/Documentation/gitdiffcore.txt b/Documentation/gitdiffcore.txt
index 1171b5c..949332b 100644
--- a/Documentation/gitdiffcore.txt
+++ b/Documentation/gitdiffcore.txt
@@ -7,7 +7,7 @@ gitdiffcore - Tweaking diff output (June 2005)
 
 SYNOPSIS
 --------
-git diff *
+'git diff' *
 
 DESCRIPTION
 -----------
@@ -16,7 +16,7 @@ The diff commands `git-diff-index`, `git-diff-files`, and `git-diff-tree`
 can be told to manipulate differences they find in
 unconventional ways before showing `diff` output.  The manipulation
 is collectively called "diffcore transformation".  This short note
-describes what they are and how to use them to produce diff output
+describes what they are and how to use them to produce 'diff' output
 that is easier to understand than the conventional kind.
 
 
-- 
1.5.5.GIT

^ permalink raw reply related

* [PATCH 09/15] manpages: italicize command names in synopses
From: Jonathan Nieder @ 2008-07-03  5:36 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, Dan McGee, J. Bruce Fields, Michele Ballabio
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

To tell command names from options in a glance.

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
 Documentation/git-reflog.txt |   10 +++++-----
 Documentation/git-remote.txt |   10 +++++-----
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/Documentation/git-reflog.txt b/Documentation/git-reflog.txt
index d963c51..1710626 100644
--- a/Documentation/git-reflog.txt
+++ b/Documentation/git-reflog.txt
@@ -16,12 +16,12 @@ The command takes various subcommands, and different options
 depending on the subcommand:
 
 [verse]
-git reflog expire [--dry-run] [--stale-fix] [--verbose]
+'git reflog expire' [--dry-run] [--stale-fix] [--verbose]
 	[--expire=<time>] [--expire-unreachable=<time>] [--all] <refs>...
-
-git reflog delete ref@\{specifier\}...
-
-git reflog [show] [log-options] [<ref>]
++
+'git reflog delete' ref@\{specifier\}...
++
+'git reflog' ['show'] [log-options] [<ref>]
 
 Reflog is a mechanism to record when the tip of branches are
 updated.  This command is to manage the information recorded in it.
diff --git a/Documentation/git-remote.txt b/Documentation/git-remote.txt
index 3634efd..bb99810 100644
--- a/Documentation/git-remote.txt
+++ b/Documentation/git-remote.txt
@@ -10,11 +10,11 @@ SYNOPSIS
 --------
 [verse]
 'git remote' [-v | --verbose]
-'git remote' add [-t <branch>] [-m <master>] [-f] [--mirror] <name> <url>
-'git remote' rm <name>
-'git remote' show [-n] <name>
-'git remote' prune [-n | --dry-run] <name>
-'git remote' update [group]
+'git remote add' [-t <branch>] [-m <master>] [-f] [--mirror] <name> <url>
+'git remote rm' <name>
+'git remote show' [-n] <name>
+'git remote prune' [-n | --dry-run] <name>
+'git remote update' [group]
 
 DESCRIPTION
 -----------
-- 
1.5.5.GIT

^ permalink raw reply related

* [PATCH 07/15] Documentation: more "git-" versus "git " changes
From: Jonathan Nieder @ 2008-07-03  5:28 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: git, Christian Couder, Nguyen Thai Ngoc Duy, Johanness Schindelin,
	J. Bruce Fields
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

With git-commands moving out of $(bindir), it is useful to make a
clearer distinction between the git subcommand 'git-whatever' and
the command you type, `git whatever <options>`.  So we use a dash
after "git" when referring to the former and not the latter.

I already sent a patch doing this same thing, but I missed some
spots.

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
 Documentation/config.txt            |   52 +++++++++++++++++-----------------
 Documentation/git-bisect.txt        |    4 +-
 Documentation/git-commit.txt        |    2 +-
 Documentation/git-filter-branch.txt |    2 +-
 Documentation/git-format-patch.txt  |    2 +-
 Documentation/git-help.txt          |    2 +-
 Documentation/git-rebase.txt        |    4 +-
 Documentation/git-reflog.txt        |    2 +-
 Documentation/git-remote.txt        |    2 +-
 Documentation/git-rerere.txt        |    2 +-
 Documentation/git-shortlog.txt      |    2 +-
 Documentation/gitcore-tutorial.txt  |   30 ++++++++++----------
 Documentation/user-manual.txt       |   36 ++++++++++++------------
 13 files changed, 71 insertions(+), 71 deletions(-)

diff --git a/Documentation/config.txt b/Documentation/config.txt
index 498247a..5a98a5b 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -356,8 +356,8 @@ core.pager::
 
 core.whitespace::
 	A comma separated list of common whitespace problems to
-	notice.  `git diff` will use `color.diff.whitespace` to
-	highlight them, and `git apply --whitespace=error` will
+	notice.  `git-diff` will use `color.diff.whitespace` to
+	highlight them, and `git-apply --whitespace=error` will
 	consider them as errors:
 +
 * `trailing-space` treats trailing whitespaces at the end of the line
@@ -426,20 +426,20 @@ branch.autosetuprebase::
 	This option defaults to never.
 
 branch.<name>.remote::
-	When in branch <name>, it tells `git fetch` which remote to fetch.
-	If this option is not given, `git fetch` defaults to remote "origin".
+	When in branch <name>, it tells `git-fetch` which remote to fetch.
+	If this option is not given, `git-fetch` defaults to remote "origin".
 
 branch.<name>.merge::
-	When in branch <name>, it tells `git fetch` the default
+	When in branch <name>, it tells `git-fetch` the default
 	refspec to be marked for merging in FETCH_HEAD. The value is
 	handled like the remote part of a refspec, and must match a
 	ref which is fetched from the remote given by
 	"branch.<name>.remote".
-	The merge information is used by `git pull` (which at first calls
-	`git fetch`) to lookup the default branch for merging. Without
-	this option, `git pull` defaults to merge the first refspec fetched.
+	The merge information is used by `git-pull` (which at first calls
+	`git-fetch`) to lookup the default branch for merging. Without
+	this option, `git-pull` defaults to merge the first refspec fetched.
 	Specify multiple values to get an octopus merge.
-	If you wish to setup `git pull` so that it merges into <name> from
+	If you wish to setup `git-pull` so that it merges into <name> from
 	another branch in the local repository, you can point
 	branch.<name>.merge to the desired branch, and use the special setting
 	`.` (a period) for branch.<name>.remote.
@@ -508,12 +508,12 @@ color.diff.<slot>::
 
 color.interactive::
 	When set to `always`, always use colors for interactive prompts
-	and displays (such as those used by "git add --interactive").
+	and displays (such as those used by "git-add --interactive").
 	When false (or `never`), never.  When set to `true` or `auto`, use
 	colors only when the output is to the terminal. Defaults to false.
 
 color.interactive.<slot>::
-	Use customized color for `git add --interactive`
+	Use customized color for `git-add --interactive`
 	output. `<slot>` may be `prompt`, `header`, or `help`, for
 	three distinct types of normal output from interactive
 	programs.  The values of these variables may be specified as
@@ -550,14 +550,14 @@ color.ui::
 	take precedence over this setting. Defaults to false.
 
 diff.autorefreshindex::
-	When using `git diff` to compare with work tree
+	When using `git-diff` to compare with work tree
 	files, do not consider stat-only change as changed.
 	Instead, silently run `git update-index --refresh` to
 	update the cached stat information for paths whose
 	contents in the work tree match the contents in the
 	index.  This option defaults to true.  Note that this
-	affects only `git diff` Porcelain, and not lower level
-	`diff` commands, such as `git diff-files`.
+	affects only `git-diff` Porcelain, and not lower level
+	`diff` commands, such as `git-diff-files`.
 
 diff.external::
 	If this config variable is set, diff generation is not
@@ -568,7 +568,7 @@ diff.external::
 
 diff.renameLimit::
 	The number of files to consider when performing the copy/rename
-	detection; equivalent to the git diff option '-l'.
+	detection; equivalent to the git-diff option '-l'.
 
 diff.renames::
 	Tells git to detect renames.  If set to any boolean value, it
@@ -608,7 +608,7 @@ format.pretty::
 
 gc.aggressiveWindow::
 	The window size parameter used in the delta compression
-	algorithm used by 'git gc --aggressive'.  This defaults
+	algorithm used by 'git-gc --aggressive'.  This defaults
 	to 10.
 
 gc.auto::
@@ -625,37 +625,37 @@ gc.autopacklimit::
 	default	value is 50.  Setting this to 0 disables it.
 
 gc.packrefs::
-	`git gc` does not run `git pack-refs` in a bare repository by
+	`git-gc` does not run `git pack-refs` in a bare repository by
 	default so that older dumb-transport clients can still fetch
-	from the repository.  Setting this to `true` lets `git gc`
+	from the repository.  Setting this to `true` lets `git-gc`
 	to run `git pack-refs`.  Setting this to `false` tells
-	`git gc` never to run `git pack-refs`. The default setting is
+	`git-gc` never to run `git pack-refs`. The default setting is
 	`notbare`. Enable it only when you know you do not have to
 	support such clients.  The default setting will change to `true`
 	at some stage, and setting this to `false` will continue to
-	prevent `git pack-refs` from being run from `git gc`.
+	prevent `git pack-refs` from being run from `git-gc`.
 
 gc.pruneexpire::
-	When `git gc` is run, it will call `prune --expire 2.weeks.ago`.
+	When `git-gc` is run, it will call `prune --expire 2.weeks.ago`.
 	Override the grace period with this config variable.
 
 gc.reflogexpire::
-	`git reflog expire` removes reflog entries older than
+	`git-reflog expire` removes reflog entries older than
 	this time; defaults to 90 days.
 
 gc.reflogexpireunreachable::
-	`git reflog expire` removes reflog entries older than
+	`git-reflog expire` removes reflog entries older than
 	this time and are not reachable from the current tip;
 	defaults to 30 days.
 
 gc.rerereresolved::
 	Records of conflicted merge you resolved earlier are
-	kept for this many days when `git rerere gc` is run.
+	kept for this many days when `git-rerere gc` is run.
 	The default is 60 days.  See linkgit:git-rerere[1].
 
 gc.rerereunresolved::
 	Records of conflicted merge you have not resolved are
-	kept for this many days when `git rerere gc` is run.
+	kept for this many days when `git-rerere gc` is run.
 	The default is 15 days.  See linkgit:git-rerere[1].
 
 rerere.autoupdate::
@@ -849,7 +849,7 @@ instaweb.port::
 
 log.date::
 	Set default date-time mode for the log command. Setting log.date
-	value is similar to using git log's --date option. The value is one of
+	value is similar to using git-log's --date option. The value is one of the
 	following alternatives: {relative,local,default,iso,rfc,short}.
 	See linkgit:git-log[1].
 
diff --git a/Documentation/git-bisect.txt b/Documentation/git-bisect.txt
index 8bbcb94..a13983f 100644
--- a/Documentation/git-bisect.txt
+++ b/Documentation/git-bisect.txt
@@ -26,7 +26,7 @@ on the subcommand:
  git bisect log
  git bisect run <cmd>...
 
-This command uses `git rev-list --bisect` to help drive the
+This command uses `git-rev-list --bisect` to help drive the
 binary search process to find which change introduced a bug, given an
 old "good" commit object name and a later "bad" commit object name.
 
@@ -101,7 +101,7 @@ $ git bisect visualize
 to see the currently remaining suspects in `gitk`.  `visualize` is a bit
 too long to type and `view` is provided as a synonym.
 
-If `DISPLAY` environment variable is not set, `git log` is used
+If 'DISPLAY' environment variable is not set, `git-log` is used
 instead.  You can even give command line options such as `-p` and
 `--stat`.
 
diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
index 0ac6204..9812dbd 100644
--- a/Documentation/git-commit.txt
+++ b/Documentation/git-commit.txt
@@ -155,7 +155,7 @@ but can be used to amend a merge commit.
 	Make a commit only from the paths specified on the
 	command line, disregarding any contents that have been
 	staged so far. This is the default mode of operation of
-	'git commit' if any paths are given on the command line,
+	'git-commit' if any paths are given on the command line,
 	in which case this option can be omitted.
 	If this option is specified together with '--amend', then
 	no paths need be specified, which can be used to amend
diff --git a/Documentation/git-filter-branch.txt b/Documentation/git-filter-branch.txt
index a9388e0..4262309 100644
--- a/Documentation/git-filter-branch.txt
+++ b/Documentation/git-filter-branch.txt
@@ -163,7 +163,7 @@ to other tags will be rewritten to point to the underlying commit.
 
 -f::
 --force::
-	`git filter-branch` refuses to start with an existing temporary
+	`git-filter-branch` refuses to start with an existing temporary
 	directory or when there are already refs starting with
 	'refs/original/', unless forced.
 
diff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt
index b990052..41e487a 100644
--- a/Documentation/git-format-patch.txt
+++ b/Documentation/git-format-patch.txt
@@ -190,7 +190,7 @@ EXAMPLES
 the current branch using `git-am` to cherry-pick them:
 +
 ------------
-$ git format-patch -k --stdout R1..R2 | git-am -3 -k
+$ git format-patch -k --stdout R1..R2 | git am -3 -k
 ------------
 
 * Extract all commits which are in the current branch but not in the
diff --git a/Documentation/git-help.txt b/Documentation/git-help.txt
index 5ace863..73ec7ad 100644
--- a/Documentation/git-help.txt
+++ b/Documentation/git-help.txt
@@ -120,7 +120,7 @@ man.<tool>.path
 You can explicitly provide a full path to your preferred man viewer by
 setting the configuration variable 'man.<tool>.path'. For example, you
 can configure the absolute path to konqueror by setting
-'man.konqueror.path'. Otherwise, 'git help' assumes the tool is
+'man.konqueror.path'. Otherwise, 'git-help' assumes the tool is
 available in PATH.
 
 man.<tool>.cmd
diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt
index 754230e..67aa497 100644
--- a/Documentation/git-rebase.txt
+++ b/Documentation/git-rebase.txt
@@ -259,10 +259,10 @@ NOTES
 When you rebase a branch, you are changing its history in a way that
 will cause problems for anyone who already has a copy of the branch
 in their repository and tries to pull updates from you.  You should
-understand the implications of using 'git rebase' on a repository that
+understand the implications of using 'git-rebase' on a repository that
 you share.
 
-When the git rebase command is run, it will first execute a "pre-rebase"
+When the git-rebase command is run, it will first execute a "pre-rebase"
 hook if one exists.  You can use this hook to do sanity checks and
 reject the rebase if it isn't appropriate.  Please see the template
 pre-rebase hook script for an example.
diff --git a/Documentation/git-reflog.txt b/Documentation/git-reflog.txt
index 8492aea..d963c51 100644
--- a/Documentation/git-reflog.txt
+++ b/Documentation/git-reflog.txt
@@ -60,7 +60,7 @@ OPTIONS
 	refs.
 +
 This computation involves traversing all the reachable objects, i.e. it
-has the same cost as 'git prune'.  Fortunately, once this is run, we
+has the same cost as 'git-prune'.  Fortunately, once this is run, we
 should not have to ever worry about missing objects, because the current
 prune and pack-objects know about reflogs and protect objects referred by
 them.
diff --git a/Documentation/git-remote.txt b/Documentation/git-remote.txt
index 32db0ae..3634efd 100644
--- a/Documentation/git-remote.txt
+++ b/Documentation/git-remote.txt
@@ -124,7 +124,7 @@ $ git checkout -b nfs linux-nfs/master
 ...
 ------------
 
-* Imitate 'git clone' but track only selected branches
+* Imitate 'git-clone' but track only selected branches
 +
 ------------
 $ mkdir project.git
diff --git a/Documentation/git-rerere.txt b/Documentation/git-rerere.txt
index 3458029..ae2b2b5 100644
--- a/Documentation/git-rerere.txt
+++ b/Documentation/git-rerere.txt
@@ -163,7 +163,7 @@ If this three-way merge resolves cleanly, the result is written
 out to your working tree file, so you would not have to manually
 resolve it.  Note that `git-rerere` leaves the index file alone,
 so you still need to do the final sanity checks with `git diff`
-(or `git diff -c`) and `git add` when you are satisfied.
+(or `git diff -c`) and `git-add` when you are satisfied.
 
 As a convenience measure, `git-merge` automatically invokes
 `git-rerere` when it exits with a failed automerge, which
diff --git a/Documentation/git-shortlog.txt b/Documentation/git-shortlog.txt
index 6e4cbc4..74a5f29 100644
--- a/Documentation/git-shortlog.txt
+++ b/Documentation/git-shortlog.txt
@@ -3,7 +3,7 @@ git-shortlog(1)
 
 NAME
 ----
-git-shortlog - Summarize 'git log' output
+git-shortlog - Summarize 'git-log' output
 
 SYNOPSIS
 --------
diff --git a/Documentation/gitcore-tutorial.txt b/Documentation/gitcore-tutorial.txt
index 7d721c5..059c8ff 100644
--- a/Documentation/gitcore-tutorial.txt
+++ b/Documentation/gitcore-tutorial.txt
@@ -595,7 +595,7 @@ pointer to the state you want to tag, but also a small tag name and
 message, along with optionally a PGP signature that says that yes,
 you really did
 that tag. You create these annotated tags with either the `-a` or
-`-s` flag to `git tag`:
+`-s` flag to `git-tag`:
 
 ----------------
 $ git tag -s <tagname>
@@ -642,7 +642,7 @@ and it will be gone. There's no external repository, and there's no
 history outside the project you created.
 
  - if you want to move or duplicate a git repository, you can do so. There
-   is `git clone` command, but if all you want to do is just to
+   is `git-clone` command, but if all you want to do is just to
    create a copy of your repository (with all the full history that
    went along with it), you can do so with a regular
    `cp -a git-tutorial new-git-tutorial`.
@@ -776,7 +776,7 @@ to it.
 ================================================
 If you make the decision to start your new branch at some
 other point in the history than the current `HEAD`, you can do so by
-just telling `git checkout` what the base of the checkout would be.
+just telling `git-checkout` what the base of the checkout would be.
 In other words, if you have an earlier tag or branch, you'd just do
 
 ------------
@@ -819,7 +819,7 @@ $ git branch <branchname> [startingpoint]
 
 which will simply _create_ the branch, but will not do anything further.
 You can then later -- once you decide that you want to actually develop
-on that branch -- switch to that branch with a regular `git checkout`
+on that branch -- switch to that branch with a regular `git-checkout`
 with the branchname as the argument.
 
 
@@ -881,7 +881,7 @@ source.
 Anyway, let's exit `gitk` (`^Q` or the File menu), and decide that we want
 to merge the work we did on the `mybranch` branch into the `master`
 branch (which is currently our `HEAD` too). To do that, there's a nice
-script called `git merge`, which wants to know which branches you want
+script called `git-merge`, which wants to know which branches you want
 to resolve and what the merge is all about:
 
 ------------
@@ -1023,12 +1023,12 @@ Merging external work
 It's usually much more common that you merge with somebody else than
 merging with your own branches, so it's worth pointing out that git
 makes that very easy too, and in fact, it's not that different from
-doing a `git merge`. In fact, a remote merge ends up being nothing
+doing a `git-merge`. In fact, a remote merge ends up being nothing
 more than "fetch the work from a remote repository into a temporary tag"
-followed by a `git merge`.
+followed by a `git-merge`.
 
 Fetching from a remote repository is done by, unsurprisingly,
-`git fetch`:
+`git-fetch`:
 
 ----------------
 $ git fetch <remote-repository>
@@ -1115,7 +1115,7 @@ argument.
 [NOTE]
 You could do without using any branches at all, by
 keeping as many local repositories as you would like to have
-branches, and merging between them with `git pull`, just like
+branches, and merging between them with `git-pull`, just like
 you merge between branches. The advantage of this approach is
 that it lets you keep a set of files for each `branch` checked
 out and you may find it easier to switch back and forth if you
@@ -1132,7 +1132,7 @@ like this:
 $ git config remote.linus.url http://www.kernel.org/pub/scm/git/git.git/
 ------------------------------------------------
 
-and use the "linus" keyword with `git pull` instead of the full URL.
+and use the "linus" keyword with `git-pull` instead of the full URL.
 
 Examples.
 
@@ -1168,7 +1168,7 @@ $ git show-branch --more=2 master mybranch
 +* [master^] Some fun.
 ------------
 
-Remember, before running `git merge`, our `master` head was at
+Remember, before running `git-merge`, our `master` head was at
 "Some fun." commit, while our `mybranch` head was at "Some
 work." commit.
 
@@ -1345,7 +1345,7 @@ $ mkdir my-git.git
 ------------
 
 Then, make that directory into a git repository by running
-`git init`, but this time, since its name is not the usual
+`git-init`, but this time, since its name is not the usual
 `.git`, we do things slightly differently:
 
 ------------
@@ -1407,7 +1407,7 @@ $ git repack
 
 will do it for you. If you followed the tutorial examples, you
 would have accumulated about 17 objects in `.git/objects/??/`
-directories by now. `git repack` tells you how many objects it
+directories by now. `git-repack` tells you how many objects it
 packed, and stores the packed file in `.git/objects/pack`
 directory.
 
@@ -1656,8 +1656,8 @@ $ git reset --hard master~2
 ------------
 
 You can make sure 'git show-branch' matches the state before
-those two 'git merge' you just did.  Then, instead of running
-two 'git merge' commands in a row, you would merge these two
+those two 'git-merge' you just did.  Then, instead of running
+two 'git-merge' commands in a row, you would merge these two
 branch heads (this is known as 'making an Octopus'):
 
 ------------
diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt
index 61cf30f..01c1af6 100644
--- a/Documentation/user-manual.txt
+++ b/Documentation/user-manual.txt
@@ -1963,10 +1963,10 @@ error: failed to push to 'ssh://yourserver.com/~you/proj.git'
 
 This can happen, for example, if you:
 
-	- use `git reset --hard` to remove already-published commits, or
-	- use `git commit --amend` to replace already-published commits
+	- use `git-reset --hard` to remove already-published commits, or
+	- use `git-commit --amend` to replace already-published commits
 	  (as in <<fixing-a-mistake-by-rewriting-history>>), or
-	- use `git rebase` to rebase any already-published commits (as
+	- use `git-rebase` to rebase any already-published commits (as
 	  in <<using-git-rebase>>).
 
 You may force git-push to perform the update anyway by preceding the
@@ -2170,7 +2170,7 @@ they are for, or what status they are in.  To get a reminder of what
 changes are in a specific branch, use:
 
 -------------------------------------------------
-$ git log linux..branchname | git-shortlog
+$ git log linux..branchname | git shortlog
 -------------------------------------------------
 
 To see whether it has already been merged into the test or release branches,
@@ -2443,7 +2443,7 @@ patches to the new mywork.  The result will look like:
 ................................................
 
 In the process, it may discover conflicts.  In that case it will stop
-and allow you to fix the conflicts; after fixing conflicts, use "git add"
+and allow you to fix the conflicts; after fixing conflicts, use "git-add"
 to update the index with those contents, and then, instead of
 running git-commit, just run
 
@@ -2700,7 +2700,7 @@ master branch.  In more detail:
 git fetch and fast-forwards
 ---------------------------
 
-In the previous example, when updating an existing branch, "git fetch"
+In the previous example, when updating an existing branch, "git-fetch"
 checks to make sure that the most recent commit on the remote
 branch is a descendant of the most recent commit on your copy of the
 branch before updating your copy of the branch to point at the new
@@ -2726,7 +2726,7 @@ resulting in a situation like:
             o--o--o <-- new head of the branch
 ................................................
 
-In this case, "git fetch" will fail, and print out a warning.
+In this case, "git-fetch" will fail, and print out a warning.
 
 In that case, you can still force git to update to the new head, as
 described in the following section.  However, note that in the
@@ -3106,7 +3106,7 @@ $ git prune
 
 to remove any of the "loose" objects that are now contained in the
 pack.  This will also remove any unreferenced objects (which may be
-created when, for example, you use "git reset" to remove a commit).
+created when, for example, you use "git-reset" to remove a commit).
 You can verify that the loose objects are gone by looking at the
 .git/objects directory or by running
 
@@ -3135,7 +3135,7 @@ branch still exists, as does everything it pointed to. The branch
 pointer itself just doesn't, since you replaced it with another one.
 
 There are also other situations that cause dangling objects. For
-example, a "dangling blob" may arise because you did a "git add" of a
+example, a "dangling blob" may arise because you did a "git-add" of a
 file, but then, before you actually committed it and made it part of the
 bigger picture, you changed something else in that file and committed
 that *updated* thing--the old state that you added originally ends up
@@ -3185,7 +3185,7 @@ Usually, dangling blobs and trees aren't very interesting. They're
 almost always the result of either being a half-way mergebase (the blob
 will often even have the conflict markers from a merge in it, if you
 have had conflicting merges that you fixed up by hand), or simply
-because you interrupted a "git fetch" with ^C or something like that,
+because you interrupted a "git-fetch" with ^C or something like that,
 leaving _some_ of the new objects in the object database, but just
 dangling and useless.
 
@@ -3694,7 +3694,7 @@ removed. The only thing `--remove` means is that update-index will be
 considering a removed file to be a valid thing, and if the file really
 does not exist any more, it will update the index accordingly.
 
-As a special case, you can also do `git-update-index --refresh`, which
+As a special case, you can also do `git update-index --refresh`, which
 will refresh the "stat" information of each index to match the current
 stat information. It will 'not' update the object status itself, and
 it will only update the fields that are used to quickly test whether
@@ -3770,7 +3770,7 @@ from one representation to the other:
 Tying it all together
 ~~~~~~~~~~~~~~~~~~~~~
 
-To commit a tree you have instantiated with "git-write-tree", you'd
+To commit a tree you have instantiated with "git write-tree", you'd
 create a "commit" object that refers to that tree and the history
 behind it--most notably the "parent" commits that preceded it in
 history.
@@ -3927,7 +3927,7 @@ $ git read-tree -m -u <origtree> <yourtree> <targettree>
 
 which will do all trivial merge operations for you directly in the
 index file, and you can just write the result out with
-`git-write-tree`.
+`git write-tree`.
 
 
 [[merging-multiple-trees-2]]
@@ -4095,7 +4095,7 @@ functions like `get_sha1_basic()` or the likes.
 This is just to get you into the groove for the most libified part of Git:
 the revision walker.
 
-Basically, the initial version of `git log` was a shell script:
+Basically, the initial version of `git-log` was a shell script:
 
 ----------------------------------------------------------------
 $ git-rev-list --pretty $(git-rev-parse --default HEAD "$@") | \
@@ -4130,7 +4130,7 @@ just have a look at the first implementation of `cmd_log()`; call
 `git show v1.3.0{tilde}155^2{tilde}4` and scroll down to that function (note that you
 no longer need to call `setup_pager()` directly).
 
-Nowadays, `git log` is a builtin, which means that it is _contained_ in the
+Nowadays, `git-log` is a builtin, which means that it is _contained_ in the
 command `git`.  The source side of a builtin is
 
 - a function called `cmd_<bla>`, typically defined in `builtin-<bla>.c`,
@@ -4146,7 +4146,7 @@ since they share quite a bit of code.  In that case, the commands which are
 _not_ named like the `.c` file in which they live have to be listed in
 `BUILT_INS` in the `Makefile`.
 
-`git log` looks more complicated in C than it does in the original script,
+`git-log` looks more complicated in C than it does in the original script,
 but that allows for a much greater flexibility and performance.
 
 Here again it is a good point to take a pause.
@@ -4157,9 +4157,9 @@ the organization of Git (after you know the basic concepts).
 So, think about something which you are interested in, say, "how can I
 access a blob just knowing the object name of it?".  The first step is to
 find a Git command with which you can do it.  In this example, it is either
-`git show` or `git cat-file`.
+`git-show` or `git-cat-file`.
 
-For the sake of clarity, let's stay with `git cat-file`, because it
+For the sake of clarity, let's stay with `git-cat-file`, because it
 
 - is plumbing, and
 
-- 
1.5.5.GIT

^ permalink raw reply related

* [PATCH 05/15] git-commit(1): depersonalize description
From: Jonathan Nieder @ 2008-07-03  5:13 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, J. Bruce Fields, Olivier Marin, Stephan Beyer
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

The intent is to make git-commit(1) feel more like a manual page.  The
change also makes the page four words shorter.

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
 Documentation/git-commit.txt |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
index 03594cd..0ac6204 100644
--- a/Documentation/git-commit.txt
+++ b/Documentation/git-commit.txt
@@ -15,8 +15,8 @@ SYNOPSIS
 
 DESCRIPTION
 -----------
-Use 'git commit' to store the current contents of the index in a new
-commit along with a log message describing the changes you have made.
+Stores the current contents of the index in a new commit along
+with a log message from the user describing the changes.
 
 The content to be added can be specified in several ways:
 
-- 
1.5.5.GIT

^ permalink raw reply related

* [PATCH 03/15] manpages: fix bogus whitespace
From: Jonathan Nieder @ 2008-07-03  5:03 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: git, Christian Couder, J. Bruce Fields, Miklos Vajna,
	Shawn O. Pearce
In-Reply-To: <Pine.GSO.4.62.0807022322380.16085@harper.uchicago.edu>

It's distracting.

Signed-off-by: Jonathan Nieder <jrnieder@uchicago.edu>
---
 Documentation/git-fast-import.txt  |    2 +-
 Documentation/git-format-patch.txt |    8 ++++----
 Documentation/git-gui.txt          |    4 ++--
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/Documentation/git-fast-import.txt b/Documentation/git-fast-import.txt
index 70cc8e8..9602764 100644
--- a/Documentation/git-fast-import.txt
+++ b/Documentation/git-fast-import.txt
@@ -86,7 +86,7 @@ OPTIONS
 
 --quiet::
 	Disable all non-fatal output, making fast-import silent when it
-	is successful.	This option disables the output shown by
+	is successful.  This option disables the output shown by
 	\--stats.
 
 --stats::
diff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt
index 3c9192a..b990052 100644
--- a/Documentation/git-format-patch.txt
+++ b/Documentation/git-format-patch.txt
@@ -175,10 +175,10 @@ and file suffix, and number patches when outputting more than one.
 
 ------------
 [format]
-        headers = "Organization: git-foo\n"
-        subjectprefix = CHANGE
-        suffix = .txt
-        numbered = auto
+	headers = "Organization: git-foo\n"
+	subjectprefix = CHANGE
+	suffix = .txt
+	numbered = auto
 	cc = <email>
 ------------
 
diff --git a/Documentation/git-gui.txt b/Documentation/git-gui.txt
index 940e43f..ea1e4ce 100644
--- a/Documentation/git-gui.txt
+++ b/Documentation/git-gui.txt
@@ -34,7 +34,7 @@ blame::
 
 browser::
 	Start a tree browser showing all files in the specified
-	commit (or 'HEAD' by default).	Files selected through the
+	commit (or 'HEAD' by default).  Files selected through the
 	browser are opened in the blame viewer.
 
 citool::
@@ -61,7 +61,7 @@ git gui blame Makefile::
 git gui blame v0.99.8 Makefile::
 
 	Show the contents of 'Makefile' in revision 'v0.99.8'
-	and provide annotations for each line.	Unlike the above
+	and provide annotations for each line.  Unlike the above
 	example the file is read from the object database and not
 	the working directory.
 
-- 
1.5.5.GIT

^ permalink raw reply related

* Re: [PATCH 0/7] Some superficial documentation changes
From: Jonathan Nieder @ 2008-07-03  4:31 UTC (permalink / raw)
  To: Junio C Hamano
  Cc: git, Christian Couder, Nguyen Thai Ngoc Duy, Jon Loeliger,
	Dan McGee, J. Bruce Fields, Olivier Marin
In-Reply-To: <7viqvqov01.fsf@gitster.siamese.dyndns.org>

On Tue, 1 Jul 2008, Junio C Hamano wrote:

> In general, I've always preferred to see command names "git-foo" typeset
> in teletype face, consistent with examples (also typeset in tt), because
> they are both something the end users are expected to type.  With this
> transition, we are however making "git-foo" not something users are
> expected to type, which means that the use of a typeface that is different
> from the body text to spell command names is now strictly for making them
> stand out in context.
>
> [...] If you
> also prefer 'italics' and list agrees, it might be a better idea to also
> apply that patch when I do so, as that step is the most error prone one
> and benefits from more eyeballs.

I am not sure whether the list agrees, but I do prefer italics.
I haven't finished making the user manual use italics yet, but
here are some patches to make the man pages do so. I also included
some formatting fixes irrelevant to that purpose to problems I found
along the way.

I was surprised to get so much feedback with the patches I sent earlier
this week.  Thanks!  I hope you find as much interesting in this series.
The bulk of the changes are in patch 11, which only replaces backticks
with apostrophes.

Jonathan

  git-format-patch(1): fix stray \ in output
  Documentation: fix gitlinks
  manpages: fix bogus whitespace
  git(1): add comma
  git-add(1): depersonalize description
  Documentation: rewrap to prepare for "git-" vs "git " change
  Documentation: more "git-" versus "git " changes
  gitdiffcore(7): fix awkward wording
  manpages: italicize command names in synopses
  manpages: italicize names of commands
  manpages: italicize git command names (which were in teletype font)
  manpages: italicize gitk's name (where it was in teletype font)
  manpages: italicize nongit command names (which were in teletype font)
  manpages: italicize git subcommand names (which were in teletype font)
  manpages: use teletype font for sample command lines

 Documentation/config.txt                |   70 ++++++------
 Documentation/fetch-options.txt         |    8 +-
 Documentation/git-am.txt                |   14 +-
 Documentation/git-apply.txt             |   18 ++--
 Documentation/git-archimport.txt        |   12 +-
 Documentation/git-archive.txt           |    6 +-
 Documentation/git-bisect.txt            |    8 +-
 Documentation/git-blame.txt             |    8 +-
 Documentation/git-branch.txt            |    8 +-
 Documentation/git-bundle.txt            |   26 ++--
 Documentation/git-check-ref-format.txt  |    2 +-
 Documentation/git-checkout-index.txt    |    8 +-
 Documentation/git-checkout.txt          |    4 +-
 Documentation/git-cherry-pick.txt       |    2 +-
 Documentation/git-cherry.txt            |    6 +-
 Documentation/git-citool.txt            |    4 +-
 Documentation/git-clean.txt             |    4 +-
 Documentation/git-clone.txt             |    6 +-
 Documentation/git-commit-tree.txt       |    2 +-
 Documentation/git-commit.txt            |   26 ++--
 Documentation/git-config.txt            |   12 +-
 Documentation/git-cvsexportcommit.txt   |    2 +-
 Documentation/git-cvsimport.txt         |   18 ++--
 Documentation/git-cvsserver.txt         |   40 ++++----
 Documentation/git-daemon.txt            |   40 ++++----
 Documentation/git-describe.txt          |    6 +-
 Documentation/git-diff-files.txt        |    2 +-
 Documentation/git-diff-index.txt        |   20 ++--
 Documentation/git-diff-tree.txt         |   10 +-
 Documentation/git-fast-export.txt       |    8 +-
 Documentation/git-fast-import.txt       |   22 ++--
 Documentation/git-fetch-pack.txt        |   14 +-
 Documentation/git-fetch.txt             |    2 +-
 Documentation/git-filter-branch.txt     |   14 +-
 Documentation/git-fmt-merge-msg.txt     |    4 +-
 Documentation/git-for-each-ref.txt      |    2 +-
 Documentation/git-format-patch.txt      |   18 ++--
 Documentation/git-fsck.txt              |    6 +-
 Documentation/git-gc.txt                |   20 ++--
 Documentation/git-get-tar-commit-id.txt |    6 +-
 Documentation/git-grep.txt              |    2 +-
 Documentation/git-gui.txt               |   28 +++---
 Documentation/git-hash-object.txt       |    2 +-
 Documentation/git-help.txt              |   10 +-
 Documentation/git-http-fetch.txt        |    2 +-
 Documentation/git-imap-send.txt         |    2 +-
 Documentation/git-index-pack.txt        |    8 +-
 Documentation/git-init.txt              |    6 +-
 Documentation/git-instaweb.txt          |    2 +-
 Documentation/git-log.txt               |    4 +-
 Documentation/git-ls-files.txt          |    6 +-
 Documentation/git-ls-remote.txt         |    2 +-
 Documentation/git-mailinfo.txt          |    4 +-
 Documentation/git-merge-base.txt        |    4 +-
 Documentation/git-merge-file.txt        |   14 +-
 Documentation/git-merge-index.txt       |   14 +-
 Documentation/git-merge-one-file.txt    |    4 +-
 Documentation/git-merge.txt             |   16 ++--
 Documentation/git-mergetool.txt         |   16 ++--
 Documentation/git-name-rev.txt          |    6 +-
 Documentation/git-pack-objects.txt      |    6 +-
 Documentation/git-pack-redundant.txt    |    2 +-
 Documentation/git-parse-remote.txt      |    2 +-
 Documentation/git-patch-id.txt          |    2 +-
 Documentation/git-peek-remote.txt       |    6 +-
 Documentation/git-prune.txt             |   14 +-
 Documentation/git-pull.txt              |   10 +-
 Documentation/git-push.txt              |    4 +-
 Documentation/git-read-tree.txt         |   42 ++++----
 Documentation/git-rebase.txt            |   30 +++---
 Documentation/git-receive-pack.txt      |   12 +-
 Documentation/git-reflog.txt            |   16 ++--
 Documentation/git-remote.txt            |   12 +-
 Documentation/git-repack.txt            |   16 ++--
 Documentation/git-rerere.txt            |   34 +++---
 Documentation/git-reset.txt             |    2 +-
 Documentation/git-rev-list.txt          |    6 +-
 Documentation/git-rev-parse.txt         |   24 ++--
 Documentation/git-revert.txt            |    4 +-
 Documentation/git-rm.txt                |    4 +-
 Documentation/git-send-pack.txt         |   10 +-
 Documentation/git-sh-setup.txt          |    2 +-
 Documentation/git-shell.txt             |    2 +-
 Documentation/git-shortlog.txt          |    4 +-
 Documentation/git-show-branch.txt       |    2 +-
 Documentation/git-show-index.txt        |    4 +-
 Documentation/git-show-ref.txt          |    4 +-
 Documentation/git-show.txt              |    6 +-
 Documentation/git-stash.txt             |    6 +-
 Documentation/git-status.txt            |    6 +-
 Documentation/git-submodule.txt         |    4 +-
 Documentation/git-svn.txt               |  106 +++++++++---------
 Documentation/git-symbolic-ref.txt      |    2 +-
 Documentation/git-tag.txt               |    8 +-
 Documentation/git-tar-tree.txt          |    6 +-
 Documentation/git-update-index.txt      |   22 ++--
 Documentation/git-upload-archive.txt    |    2 +-
 Documentation/git-upload-pack.txt       |    6 +-
 Documentation/git-var.txt               |    2 +-
 Documentation/git-verify-pack.txt       |    2 +-
 Documentation/git-verify-tag.txt        |    2 +-
 Documentation/git-web--browse.txt       |    6 +-
 Documentation/git-whatchanged.txt       |    4 +-
 Documentation/git-write-tree.txt        |    8 +-
 Documentation/git.txt                   |   16 ++--
 Documentation/gitattributes.txt         |   22 ++--
 Documentation/gitcore-tutorial.txt      |  188 +++++++++++++++---------------
 Documentation/gitcvs-migration.txt      |   18 ++--
 Documentation/gitdiffcore.txt           |   38 +++---
 Documentation/githooks.txt              |   74 ++++++------
 Documentation/gitignore.txt             |    4 +-
 Documentation/gitk.txt                  |    2 +-
 Documentation/gitrepository-layout.txt  |   18 ++--
 Documentation/gittutorial-2.txt         |   16 ++--
 Documentation/gittutorial.txt           |   79 +++++++++-----
 Documentation/i18n.txt                  |    4 +-
 Documentation/merge-options.txt         |    4 +-
 Documentation/pull-fetch-param.txt      |    8 +-
 Documentation/urls-remotes.txt          |    4 +-
 Documentation/user-manual.txt           |   42 ++++----
 120 files changed, 848 insertions(+), 823 deletions(-)

^ permalink raw reply

* [JGIT PATCH 1/1] Use 'git upload-pack' for local transport and not 'git-upload-pack'
From: Shawn O. Pearce @ 2008-07-03  3:58 UTC (permalink / raw)
  To: Robin Rosenberg, Marek Zawirski; +Cc: git

Since Git 1.6.0 and later is heading towards moving the dash form
of commands out of the user's $PATH and into the libexec directory
we may not have 'git-upload-pack' or 'git-receive-pack' in $PATH
when the JRE tries to startup C Git for a local transport.  Instead
we should use the git wrapper, as it can select the right libexec
directory and start the correct helper program, or perform the task
internally if it is a builtin command.

In the future we should eliminate this reliance on C Git for any
sort of local transport operation.  We have direct filesystem IO
available to read from the source repository, so there is little
execuse for us to be invoking C Git for this special case.  Until
we fix it, we should at least try to ensure it works for any user.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---
 .../org/spearce/jgit/transport/TransportLocal.java |   25 ++++++++++++++++---
 1 files changed, 21 insertions(+), 4 deletions(-)

diff --git a/org.spearce.jgit/src/org/spearce/jgit/transport/TransportLocal.java b/org.spearce.jgit/src/org/spearce/jgit/transport/TransportLocal.java
index b112267..b41d4af 100644
--- a/org.spearce.jgit/src/org/spearce/jgit/transport/TransportLocal.java
+++ b/org.spearce.jgit/src/org/spearce/jgit/transport/TransportLocal.java
@@ -59,13 +59,15 @@ import org.spearce.jgit.util.FS;
  * process.
  */
 class TransportLocal extends PackTransport {
+	private static final String PWD = ".";
+
 	static boolean canHandle(final URIish uri) {
 		if (uri.getHost() != null || uri.getPort() > 0 || uri.getUser() != null
 				|| uri.getPass() != null || uri.getPath() == null)
 			return false;
 
 		if ("file".equals(uri.getScheme()) || uri.getScheme() == null)
-			return FS.resolve(new File("."), uri.getPath()).isDirectory();
+			return FS.resolve(new File(PWD), uri.getPath()).isDirectory();
 		return false;
 	}
 
@@ -74,7 +76,7 @@ class TransportLocal extends PackTransport {
 	TransportLocal(final Repository local, final URIish uri) {
 		super(local, uri);
 
-		File d = FS.resolve(new File("."), uri.getPath()).getAbsoluteFile();
+		File d = FS.resolve(new File(PWD), uri.getPath()).getAbsoluteFile();
 		if (new File(d, ".git").isDirectory())
 			d = new File(d, ".git");
 		remoteGitDir = d;
@@ -94,8 +96,23 @@ class TransportLocal extends PackTransport {
 	protected Process startProcessWithErrStream(final String cmd)
 			throws TransportException {
 		try {
-			final Process proc = Runtime.getRuntime().exec(
-					new String[] { cmd, "." }, null, remoteGitDir);
+			final String[] args;
+			final Process proc;
+
+			if (cmd.startsWith("git-")) {
+				args = new String[] { "git", cmd.substring(4), PWD };
+			} else {
+				final int gitspace = cmd.indexOf("git ");
+				if (gitspace >= 0) {
+					final String git = cmd.substring(0, gitspace + 3);
+					final String subcmd = cmd.substring(gitspace + 4);
+					args = new String[] { git, subcmd, PWD };
+				} else {
+					args = new String[] { cmd, PWD };
+				}
+			}
+
+			proc = Runtime.getRuntime().exec(args, null, remoteGitDir);
 			new StreamRewritingThread(cmd, proc.getErrorStream()).start();
 			return proc;
 		} catch (IOException err) {
-- 
1.5.6.74.g8a5e

^ permalink raw reply related

* Re: about c8af1de9 (git status uses pager)
From: Tim Stoakes @ 2008-07-03  2:15 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git
In-Reply-To: <7vtzfln5zw.fsf@gitster.siamese.dyndns.org>

Junio C Hamano(gitster@pobox.com)@220608-03:01:
> Having said all that, I have to say I am regretting to have accepted that
> patch to enable pager on status, not because it bothers me personally (it
> doesn't primarily because I practically never run git-status because I
> consider the command useless and living almost always in Emacs helps), but
> because in principle changing anything that existing users are used to is
> bad.
> 
> Jeff had a patch to allow boolean configuration variable "pager.<command>"
> to override the built-in pager settings during 1.5.6 cycle, and I think it
> was a reasonable approach to take.  People who want to page output from
> git-status can then set "pager.status = true" in their configuration (and
> then we can revert c8af1de (make git-status use a pager, 2008-04-23)).
> Alternatively we could keep the current status-quo for the default, and
> people can say "pager.status = false" in their configuration.

I'd really like to see this. Setting core.pager to `less -FSRX` or
similar is not useful for me - I *want* to have -X for eg. `git diff`,
but I don't want paging at all for status.

This was quite a nasty change to sneak on people I think.

Tim

-- 
Tim Stoakes

^ permalink raw reply

* [PATCH] Implement "git stash branch <newbranch> <stash>"
From: Abhijit Menon-Sen @ 2008-07-03  2:23 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Nanako Shiraishi, git
In-Reply-To: <7vprpw80bw.fsf@gitster.siamese.dyndns.org>

Restores the stashed state on a new branch rooted at the commit on which
the stash was originally created, so that conflicts caused by subsequent
changes on the original branch can be dealt with.

(Thanks to Junio for this nice idea.)
---
 Documentation/git-stash.txt |   19 ++++++++++++++++++-
 git-stash.sh                |   21 +++++++++++++++++++++
 2 files changed, 39 insertions(+), 1 deletions(-)

diff --git a/Documentation/git-stash.txt b/Documentation/git-stash.txt
index 23ac331..cfc1c28 100644
--- a/Documentation/git-stash.txt
+++ b/Documentation/git-stash.txt
@@ -8,8 +8,11 @@ git-stash - Stash the changes in a dirty working directory away
 SYNOPSIS
 --------
 [verse]
-'git stash' (list | show [<stash>] | apply [<stash>] | clear | drop [<stash>] | pop [<stash>])
+'git stash' list
+'git stash' (show | apply | drop | pop ) [<stash>]
+'git stash' branch <branchname> [<stash>]
 'git stash' [save [<message>]]
+'git stash' clear
 
 DESCRIPTION
 -----------
@@ -81,6 +84,20 @@ tree's changes, but also the index's ones. However, this can fail, when you
 have conflicts (which are stored in the index, where you therefore can no
 longer apply the changes as they were originally).
 
+branch <branchname> [<stash>]::
+
+	Creates and checks out a new branch named `<branchname>` starting from
+	the commit at which the `<stash>` was originally created, applies the
+	changes recorded in `<stash>` to the new working tree, and drops the
+	`<stash>` if that completes successfully. When no `<stash>` is given,
+	applies the latest one.
++
+This is useful if the branch on which you ran `git stash save` has
+changed enough that `git stash apply` fails due to conflicts. Since
+the stash is applied on top of the commit that was HEAD at the time
+`git stash` was run, it restores the originally stashed state with
+no conflicts.
+
 clear::
 	Remove all the stashed states. Note that those states will then
 	be subject to pruning, and may be difficult or impossible to recover.
diff --git a/git-stash.sh b/git-stash.sh
index 4938ade..8e50b03 100755
--- a/git-stash.sh
+++ b/git-stash.sh
@@ -218,6 +218,23 @@ drop_stash () {
 	git rev-parse --verify "$ref_stash@{0}" > /dev/null 2>&1 || clear_stash
 }
 
+apply_to_branch () {
+	have_stash || die 'Nothing to apply'
+
+	test -n "$1" || die 'No branch name specified'
+	branch=$1
+
+	if test -z "$2"
+	then
+		set x "$ref_stash@{0}"
+	fi
+	stash=$2
+
+	git-checkout -b $branch $stash^ &&
+	apply_stash $stash &&
+	drop_stash $stash
+}
+
 # Main command set
 case "$1" in
 list)
@@ -264,6 +281,10 @@ pop)
 		drop_stash "$@"
 	fi
 	;;
+branch)
+	shift
+	apply_to_branch "$@"
+	;;
 *)
 	if test $# -eq 0
 	then
-- 
1.5.6

^ permalink raw reply related

* [PATCH] Fix describe --tags --long so it does not segfault
From: Shawn O. Pearce @ 2008-07-03  2:32 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, Mikael Magnusson, Mark Burton
In-Reply-To: <237967ef0807021256j3e67bceaoecbb8f37112db2ab@mail.gmail.com>

If we match a lightweight (non-annotated tag) as the name to
output and --long was requested we do not have a tag, nor do
we have a tagged object to display.  Instead we must use the
object we were passed as input for the long format display.

Reported-by: Mark Burton <markb@ordern.com>
Backtraced-by: Mikael Magnusson <mikachu@gmail.com>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---

 Thanks Mikael, the backtrace really made it easy to figure out
 what the breakage was here.

 builtin-describe.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/builtin-describe.c b/builtin-describe.c
index 3da99c1..e515f9c 100644
--- a/builtin-describe.c
+++ b/builtin-describe.c
@@ -204,7 +204,7 @@ static void describe(const char *arg, int last_one)
 		 */
 		display_name(n);
 		if (longformat)
-			show_suffix(0, n->tag->tagged->sha1);
+			show_suffix(0, n->tag ? n->tag->tagged->sha1 : sha1);
 		printf("\n");
 		return;
 	}
-- 
1.5.6.74.g8a5e

^ permalink raw reply related


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox