* Re: [PATCH v2 1/4] Documentation/git-merge: reword references to "remote" and "pull"
From: Thomas Rast @ 2010-01-10 12:24 UTC (permalink / raw)
To: Jonathan Nieder; +Cc: git, Junio C Hamano
In-Reply-To: <20100110041357.GF1083@progeny.tock>
Jonathan Nieder wrote:
> Thomas Rast wrote:
> > * Look at the diffs. 'git diff' will show a three-way diff,
> > - highlighting changes from both the HEAD and remote versions.
> > + highlighting changes from both the HEAD and their versions.
> >
> > * Look at the diffs on their own. 'git log --merge -p <path>'
>
> This is a bit awkward, since 'they' is playing two roles. Also,
> the context does not make it obvious what 'our' and 'their'
> versions are.
>
> Maybe:
>
> | * Look at the diffs. 'git diff' will show a three-way diff,
> | highlighting changes from both the HEAD and MERGE_HEAD
> | versions.
I like this idea, as it nicely assigns terminology to the "their"
side. We need to explain MERGE_HEAD (it's not in the manpage yet),
but that should fit in somewhere.
--
Thomas Rast
trast@{inf,student}.ethz.ch
^ permalink raw reply
* Re: [PATCH v2 4/4] Documentation: spell 'git cmd' without dash throughout
From: Thomas Rast @ 2010-01-10 12:21 UTC (permalink / raw)
To: Jonathan Nieder; +Cc: git, Junio C Hamano
In-Reply-To: <20100110025641.GB1083@progeny.tock>
Jonathan Nieder wrote:
> > 110 files changed, 584 insertions(+), 584 deletions(-)
>
> But yikes! Did you do this by hand or by some automated process?
The (now-refined) bottom line is
perl -i -pe "s{'git-((?"'!'"cvsserver|upload-pack|receive-pack|shell|upload-archive)[a-z-]+)}{'git \$1}g" Documentation/*.txt
git checkout -- Documentation/RelNotes*
git add -p
I really stepped through all of them with 'git add -p', but my eyes
probably got tired rather quickly.
> A 'git-apply' snuck in. ;-)
Indeed, and (as you can see in the update I sent a few minutes ago) I
missed a lot more, because I originally had a regex that only scanned
for 'git-cmd' and 'git-split-cmd', missing the 'git-three-word-cmd'
and 'git-cmd --with-option' forms. Thanks for pointing that out.
--
Thomas Rast
trast@{inf,student}.ethz.ch
^ permalink raw reply
* Re: [PATCH v2 2/4] Documentation: warn prominently against merging with dirty trees
From: Thomas Rast @ 2010-01-10 12:16 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Jonathan Nieder, git
In-Reply-To: <7vskaefp2v.fsf@alter.siamese.dyndns.org>
Junio C Hamano wrote:
> >> while possible, it leaves you in a state that is hard to
> >> +back out of in the case of a conflict.
> >> +
> >
> > Oh, that is a problem. Maybe 'git merge' should refuse to merge
> > unless told otherwise, if there is a dirty index and there might be
> > conflicts.
Actually I'm worried about a dirty *worktree*. Do you think that
should be clarified?
> "git reset --merge" will keep your local changes after such a merge, and
> "mergy" operations (not just "merge" but also "revert", "am -3", etc)
> won't get you into a situation where you cannot, by refusing to do
> anything when e.g. your index is dirty. Especially when Christian's
> "reset --merge" update becomes solid, "... is hard to back out of" will
> become a false statement.
Does that apply to dirty worktrees, too? I admit I didn't follow that
topic at all.
--
Thomas Rast
trast@{inf,student}.ethz.ch
^ permalink raw reply
* [PATCH] Documentation: show-files is now called git-ls-files
From: Thomas Rast @ 2010-01-10 12:11 UTC (permalink / raw)
To: git; +Cc: Junio C Hamano, Jonathan Nieder
In-Reply-To: <201001101310.21455.trast@student.ethz.ch>
Amazingly, a reference to 'show files' survived from the core command
documentation introduced in c64b9b8 (Reference documentation for the
core git commands., 2005-05-05)!
However, the tool is now called git-ls-files.
Signed-off-by: Thomas Rast <trast@student.ethz.ch>
---
Documentation/git-ls-files.txt | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/Documentation/git-ls-files.txt b/Documentation/git-ls-files.txt
index 7faba23..a84cc37 100644
--- a/Documentation/git-ls-files.txt
+++ b/Documentation/git-ls-files.txt
@@ -140,7 +140,7 @@ OPTIONS
Output
------
-show files just outputs the filename unless '--stage' is specified in
+'git ls-files' just outputs the filenames unless '--stage' is specified in
which case it outputs:
[<tag> ]<mode> <object> <stage> <file>
--
1.6.6.218.g502b0
^ permalink raw reply related
* [PATCH 2/2] More missed `code snippets`
From: Thomas Rast @ 2010-01-10 12:10 UTC (permalink / raw)
To: git; +Cc: Junio C Hamano, Jonathan Nieder
In-Reply-To: <48822ef1fee0a734817bad9f63e122e4d1d66106.1263123648.git.trast@student.ethz.ch>
Squashed into the corresponding commit of the original series.
---
Additionally, I reverted
--- i/Documentation/git-bisect.txt
+++ w/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.
per the review.
Documentation/config.txt | 2 +-
Documentation/git-gc.txt | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git i/Documentation/config.txt w/Documentation/config.txt
index 6bfd9e1..3e96a27 100644
--- i/Documentation/config.txt
+++ w/Documentation/config.txt
@@ -747,7 +747,7 @@ diff.mnemonicprefix::
compares a (c)ommit and the (w)ork tree;
`git diff --cached`;;
compares a (c)ommit and the (i)ndex;
-`git-diff HEAD:file1 file2`;;
+`git diff HEAD:file1 file2`;;
compares an (o)bject and a (w)ork tree entity;
`git diff --no-index a b`;;
compares two non-git things (1) and (2).
diff --git a/Documentation/git-gc.txt b/Documentation/git-gc.txt
index 771807f..189573a 100644
--- a/Documentation/git-gc.txt
+++ b/Documentation/git-gc.txt
@@ -50,7 +50,7 @@ Housekeeping is required if there are too many loose objects or
too many packs in the repository. If the number of loose objects
exceeds the value of the `gc.auto` configuration variable, then
all loose objects are combined into a single pack using
-'git repack -d -l'. Setting the value of `gc.auto` to 0
+`git repack -d -l`. Setting the value of `gc.auto` to 0
disables automatic packing of loose objects.
+
If the number of packs exceeds the value of `gc.autopacklimit`,
--
1.6.6.218.g502b0
^ permalink raw reply related
* [PATCH 1/2] More missed dashed 'git-cmd' forms
From: Thomas Rast @ 2010-01-10 12:10 UTC (permalink / raw)
To: git; +Cc: Junio C Hamano, Jonathan Nieder
In-Reply-To: <201001101310.21455.trast@student.ethz.ch>
Squashed into the corresponding commit of the original series.
---
Documentation/config.txt | 14 +++++++-------
Documentation/git-archive.txt | 2 +-
Documentation/git-commit.txt | 2 +-
Documentation/git-daemon.txt | 4 ++--
Documentation/git-diff-index.txt | 4 ++--
Documentation/git-diff-tree.txt | 6 +++---
Documentation/git-for-each-ref.txt | 2 +-
Documentation/git-gc.txt | 2 +-
Documentation/git-get-tar-commit-id.txt | 2 +-
Documentation/git-help.txt | 2 +-
Documentation/git-instaweb.txt | 2 +-
Documentation/git-log.txt | 2 +-
Documentation/git-ls-files.txt | 2 +-
Documentation/git-mailinfo.txt | 2 +-
Documentation/git-merge-index.txt | 2 +-
Documentation/git-merge-one-file.txt | 4 ++--
Documentation/git-prune.txt | 2 +-
Documentation/git-read-tree.txt | 2 +-
Documentation/git-repack.txt | 2 +-
Documentation/git-rerere.txt | 2 +-
Documentation/git-rev-parse.txt | 4 ++--
Documentation/git-show-index.txt | 2 +-
Documentation/git-show.txt | 2 +-
Documentation/git-tag.txt | 2 +-
Documentation/git-tar-tree.txt | 2 +-
Documentation/git-update-index.txt | 8 ++++----
Documentation/git-upload-archive.txt | 2 +-
Documentation/git-web--browse.txt | 4 ++--
Documentation/gitcore-tutorial.txt | 12 ++++++------
Documentation/gitdiffcore.txt | 18 +++++++++---------
Documentation/githooks.txt | 8 ++++----
Documentation/gitrepository-layout.txt | 2 +-
32 files changed, 64 insertions(+), 64 deletions(-)
diff --git a/Documentation/config.txt b/Documentation/config.txt
index 937dfbe..5d549ca 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -443,7 +443,7 @@ 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
+ highlight them, and 'git apply --whitespace=error' will
consider them as errors. You can prefix `-` to disable
any of them (e.g. `-trailing-space`):
+
@@ -673,7 +673,7 @@ color.interactive::
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`, `help` or `error`, for
four distinct types of normal output from interactive
commands. The values of these variables may be specified as
@@ -858,7 +858,7 @@ format.signoff::
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::
@@ -889,22 +889,22 @@ gc.pruneexpire::
unreachable objects immediately.
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].
gitcvs.commitmsgannotation::
diff --git a/Documentation/git-archive.txt b/Documentation/git-archive.txt
index 980bc62..799c8b6 100644
--- a/Documentation/git-archive.txt
+++ b/Documentation/git-archive.txt
@@ -27,7 +27,7 @@ used as the modification time of each file in the archive. In the latter
case the commit time as recorded in the referenced commit object is
used instead. Additionally the commit ID is stored in a global
extended pax header if the tar format is used; it can be extracted
-using 'git-get-tar-commit-id'. In ZIP files it is stored as a file
+using 'git get-tar-commit-id'. In ZIP files it is stored as a file
comment.
OPTIONS
diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
index 8914543..c322c75 100644
--- a/Documentation/git-commit.txt
+++ b/Documentation/git-commit.txt
@@ -40,7 +40,7 @@ The content to be added can be specified in several ways:
5. by using the --interactive switch with the 'commit' command to decide one
by one which files should be part of the commit, before finalizing the
- operation. Currently, this is done by invoking 'git-add --interactive'.
+ operation. Currently, this is done by invoking 'git add --interactive'.
The `--dry-run` option can be used to obtain a
summary of what is included by any of the above for the next
diff --git a/Documentation/git-daemon.txt b/Documentation/git-daemon.txt
index ece232e..01c9f8e 100644
--- a/Documentation/git-daemon.txt
+++ b/Documentation/git-daemon.txt
@@ -181,7 +181,7 @@ upload-pack::
item to `false`.
upload-archive::
- This serves 'git-archive --remote'. It is disabled by
+ This serves 'git archive --remote'. It is disabled by
default, but a repository can enable it by setting
`daemon.uploadarch` configuration item to `true`.
@@ -258,7 +258,7 @@ Repositories can still be accessed by hostname though, assuming
they correspond to these IP addresses.
selectively enable/disable services per repository::
- To enable 'git-archive --remote' and disable 'git fetch' against
+ To enable 'git archive --remote' and disable 'git fetch' against
a repository, have the following in the configuration file in the
repository (that is the file 'config' next to 'HEAD', 'refs' and
'objects').
diff --git a/Documentation/git-diff-index.txt b/Documentation/git-diff-index.txt
index 84acf49..162cb74 100644
--- a/Documentation/git-diff-index.txt
+++ b/Documentation/git-diff-index.txt
@@ -72,7 +72,7 @@ In fact, `git diff-index --cached` *should* always be entirely equivalent to
actually doing a 'git write-tree' and comparing that. Except this one is much
nicer for the case where you just want to check where you are.
-So doing a 'git-diff-index --cached' is basically very useful when you are
+So doing a `git diff-index --cached` is basically very useful when you are
asking yourself "what have I already marked for being committed, and
what's the difference to a previous tree".
@@ -87,7 +87,7 @@ The non-cached version asks the question:
tree - index contents _and_ files that aren't up-to-date
which is obviously a very useful question too, since that tells you what
-you *could* commit. Again, the output matches the 'git-diff-tree -r'
+you *could* commit. Again, the output matches the 'git diff-tree -r'
output to a tee, but with a twist.
The twist is that if some file doesn't match the index, we don't have
diff --git a/Documentation/git-diff-tree.txt b/Documentation/git-diff-tree.txt
index 95c402a..a7e37b8 100644
--- a/Documentation/git-diff-tree.txt
+++ b/Documentation/git-diff-tree.txt
@@ -67,19 +67,19 @@ The following flags further affect the behavior when comparing
commits (but not trees).
-m::
- By default, 'git-diff-tree --stdin' does not show
+ By default, 'git diff-tree --stdin' does not show
differences for merge commits. With this flag, it shows
differences to that commit from all of its parents. See
also '-c'.
-s::
- By default, 'git-diff-tree --stdin' shows differences,
+ By default, 'git diff-tree --stdin' shows differences,
either in machine-readable form (without '-p') or in patch
form (with '-p'). This output can be suppressed. It is
only useful with '-v' flag.
-v::
- This flag causes 'git-diff-tree --stdin' to also show
+ This flag causes 'git diff-tree --stdin' to also show
the commit message before the differences.
include::pretty-options.txt[]
diff --git a/Documentation/git-for-each-ref.txt b/Documentation/git-for-each-ref.txt
index 8dc873f..7e83288 100644
--- a/Documentation/git-for-each-ref.txt
+++ b/Documentation/git-for-each-ref.txt
@@ -82,7 +82,7 @@ objecttype::
The type of the object (`blob`, `tree`, `commit`, `tag`).
objectsize::
- The size of the object (the same as 'git-cat-file -s' reports).
+ The size of the object (the same as 'git cat-file -s' reports).
objectname::
The object name (aka SHA-1).
diff --git a/Documentation/git-gc.txt b/Documentation/git-gc.txt
index 07f211f..771807f 100644
--- a/Documentation/git-gc.txt
+++ b/Documentation/git-gc.txt
@@ -50,7 +50,7 @@ Housekeeping is required if there are too many loose objects or
too many packs in the repository. If the number of loose objects
exceeds the value of the `gc.auto` configuration variable, then
all loose objects are combined into a single pack using
-'git-repack -d -l'. Setting the value of `gc.auto` to 0
+'git repack -d -l'. Setting the value of `gc.auto` to 0
disables automatic packing of loose objects.
+
If the number of packs exceeds the value of `gc.autopacklimit`,
diff --git a/Documentation/git-get-tar-commit-id.txt b/Documentation/git-get-tar-commit-id.txt
index 94c434b..790af95 100644
--- a/Documentation/git-get-tar-commit-id.txt
+++ b/Documentation/git-get-tar-commit-id.txt
@@ -17,7 +17,7 @@ Acts as a filter, extracting the commit ID stored in archives created by
'git archive'. It reads only the first 1024 bytes of input, thus its
runtime is not influenced by the size of <tarfile> very much.
-If no commit ID is found, 'git-get-tar-commit-id' quietly exists with a
+If no commit ID is found, 'git get-tar-commit-id' quietly exists with a
return code of 1. This can happen if <tarfile> had not been created
using 'git archive' or if the first parameter of 'git archive' had been
a tree ID instead of a commit ID or tag.
diff --git a/Documentation/git-help.txt b/Documentation/git-help.txt
index ce41b65..f8df109 100644
--- a/Documentation/git-help.txt
+++ b/Documentation/git-help.txt
@@ -55,7 +55,7 @@ other display programs (see below).
+
The web browser can be specified using the configuration variable
'help.browser', or 'web.browser' if the former is not set. If none of
-these config variables is set, the 'git-web--browse' helper script
+these config variables is set, the 'git web--browse' helper script
(called by 'git help') will pick a suitable default. See
linkgit:git-web--browse[1] for more information about this.
diff --git a/Documentation/git-instaweb.txt b/Documentation/git-instaweb.txt
index 0771f25..a1f17df 100644
--- a/Documentation/git-instaweb.txt
+++ b/Documentation/git-instaweb.txt
@@ -44,7 +44,7 @@ OPTIONS
-b::
--browser::
The web browser that should be used to view the gitweb
- page. This will be passed to the 'git-web--browse' helper
+ page. This will be passed to the 'git web--browse' helper
script along with the URL of the gitweb instance. See
linkgit:git-web--browse[1] for more information about this. If
the script fails, the URL will be printed to stdout.
diff --git a/Documentation/git-log.txt b/Documentation/git-log.txt
index cb12f09..ff4063b 100644
--- a/Documentation/git-log.txt
+++ b/Documentation/git-log.txt
@@ -16,7 +16,7 @@ Shows the commit logs.
The command takes options applicable to the 'git rev-list'
command to control what is shown and how, and options applicable to
-the 'git-diff-*' commands to control how the changes
+the 'git diff-*' commands to control how the changes
each commit introduces are shown.
diff --git a/Documentation/git-ls-files.txt b/Documentation/git-ls-files.txt
index 92b21d7..7faba23 100644
--- a/Documentation/git-ls-files.txt
+++ b/Documentation/git-ls-files.txt
@@ -145,7 +145,7 @@ which case it outputs:
[<tag> ]<mode> <object> <stage> <file>
-'git-ls-files --unmerged' and 'git-ls-files --stage' can be used to examine
+'git ls-files --unmerged' and 'git ls-files --stage' can be used to examine
detailed information on unmerged paths.
For an unmerged path, instead of recording a single mode/SHA1 pair,
diff --git a/Documentation/git-mailinfo.txt b/Documentation/git-mailinfo.txt
index a524252..e3d58cb 100644
--- a/Documentation/git-mailinfo.txt
+++ b/Documentation/git-mailinfo.txt
@@ -30,7 +30,7 @@ OPTIONS
whitespaces, (3) '[' up to ']', typically '[PATCH]', and
then prepends "[PATCH] ". This flag forbids this
munging, and is most useful when used to read back
- 'git-format-patch -k' output.
+ 'git format-patch -k' output.
-b::
When -k is not in effect, all leading strings bracketed with '['
diff --git a/Documentation/git-merge-index.txt b/Documentation/git-merge-index.txt
index 493f061..4d266de 100644
--- a/Documentation/git-merge-index.txt
+++ b/Documentation/git-merge-index.txt
@@ -43,7 +43,7 @@ code.
Typically this is run with a script calling git's imitation of
the 'merge' command from the RCS package.
-A sample script called 'git-merge-one-file' is included in the
+A sample script called 'git merge-one-file' is included in the
distribution.
ALERT ALERT ALERT! The git "merge object order" is different from the
diff --git a/Documentation/git-merge-one-file.txt b/Documentation/git-merge-one-file.txt
index 7360202..a163cfc 100644
--- a/Documentation/git-merge-one-file.txt
+++ b/Documentation/git-merge-one-file.txt
@@ -8,12 +8,12 @@ git-merge-one-file - The standard helper program to use with git-merge-index
SYNOPSIS
--------
-'git-merge-one-file'
+'git merge-one-file'
DESCRIPTION
-----------
This is the standard helper program to use with 'git merge-index'
-to resolve a merge after the trivial merge done with 'git-read-tree -m'.
+to resolve a merge after the trivial merge done with 'git read-tree -m'.
Author
------
diff --git a/Documentation/git-prune.txt b/Documentation/git-prune.txt
index 437d7c4..3bb7304 100644
--- a/Documentation/git-prune.txt
+++ b/Documentation/git-prune.txt
@@ -16,7 +16,7 @@ DESCRIPTION
NOTE: In most cases, users should run 'git gc', which calls
'git prune'. See the section "NOTES", below.
-This runs 'git-fsck --unreachable' using all the refs
+This runs 'git fsck --unreachable' using all the refs
available in `$GIT_DIR/refs`, optionally with additional set of
objects specified on the command line, and prunes all unpacked
objects unreachable from any of these head objects from the object database.
diff --git a/Documentation/git-read-tree.txt b/Documentation/git-read-tree.txt
index 469cd69..a31a4cb 100644
--- a/Documentation/git-read-tree.txt
+++ b/Documentation/git-read-tree.txt
@@ -298,7 +298,7 @@ populated. Here is an outline of how the algorithm works:
trivial rules ..
You would normally use 'git merge-index' with supplied
-'git-merge-one-file' to do this last step. The script updates
+'git merge-one-file' to do this last step. The script updates
the files in the working tree as it merges each path and at the
end of a successful merge.
diff --git a/Documentation/git-repack.txt b/Documentation/git-repack.txt
index 50a5c96..538895c 100644
--- a/Documentation/git-repack.txt
+++ b/Documentation/git-repack.txt
@@ -71,7 +71,7 @@ other objects in that pack they already have locally.
-n::
Do not update the server information with
- 'git-update-server-info'. This option skips
+ '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 linkgit:git-update-server-info[1].
diff --git a/Documentation/git-rerere.txt b/Documentation/git-rerere.txt
index 8dab467..acc220a 100644
--- a/Documentation/git-rerere.txt
+++ b/Documentation/git-rerere.txt
@@ -37,7 +37,7 @@ its working state.
'clear'::
This resets the metadata used by rerere if a merge resolution is to be
-aborted. Calling 'git-am [--skip|--abort]' or 'git-rebase [--skip|--abort]'
+aborted. Calling 'git am [--skip|--abort]' or 'git rebase [--skip|--abort]'
will automatically invoke this command.
'diff'::
diff --git a/Documentation/git-rev-parse.txt b/Documentation/git-rev-parse.txt
index fff4cb8..82ae16e 100644
--- a/Documentation/git-rev-parse.txt
+++ b/Documentation/git-rev-parse.txt
@@ -74,7 +74,7 @@ OPTIONS
properly quoted for consumption by shell. Useful when
you expect your parameter to contain whitespaces and
newlines (e.g. when using pickaxe `-S` with
- 'git-diff-\*'). In contrast to the `--sq-quote` option,
+ 'git diff-\*'). In contrast to the `--sq-quote` option,
the command input is still interpreted as usual.
--not::
@@ -361,7 +361,7 @@ usage on the standard error stream, and exits with code 129.
Input Format
~~~~~~~~~~~~
-'git-rev-parse --parseopt' input format is fully text based. It has two parts,
+'git rev-parse --parseopt' input format is fully text based. It has two parts,
separated by a line that contains only `--`. The lines before the separator
(should be more than one) are used for the usage.
The lines after the separator describe the options.
diff --git a/Documentation/git-show-index.txt b/Documentation/git-show-index.txt
index deebdc8..8382fbe 100644
--- a/Documentation/git-show-index.txt
+++ b/Documentation/git-show-index.txt
@@ -17,7 +17,7 @@ Reads given idx file for packed git archive created with
'git pack-objects' command, and dumps its contents.
The information it outputs is subset of what you can get from
-'git-verify-pack -v'; this command only shows the packfile
+'git verify-pack -v'; this command only shows the packfile
offset and SHA1 of each object.
diff --git a/Documentation/git-show.txt b/Documentation/git-show.txt
index de83d6b..55e687a 100644
--- a/Documentation/git-show.txt
+++ b/Documentation/git-show.txt
@@ -16,7 +16,7 @@ Shows one or more objects (blobs, trees, tags and commits).
For commits it shows the log message and textual diff. It also
presents the merge commit in a special format as produced by
-'git-diff-tree --cc'.
+'git diff-tree --cc'.
For tags, it shows the tag message and the referenced objects.
diff --git a/Documentation/git-tag.txt b/Documentation/git-tag.txt
index 518bf98..31c78a8 100644
--- a/Documentation/git-tag.txt
+++ b/Documentation/git-tag.txt
@@ -131,7 +131,7 @@ and be done with it.
. The insane thing.
You really want to call the new version "X" too, 'even though'
-others have already seen the old one. So just use 'git-tag -f'
+others have already seen the old one. So just use 'git tag -f'
again, as if you hadn't already published the old one.
However, Git does *not* (and it should not) change tags behind
diff --git a/Documentation/git-tar-tree.txt b/Documentation/git-tar-tree.txt
index 7c116ec..3c786bd 100644
--- a/Documentation/git-tar-tree.txt
+++ b/Documentation/git-tar-tree.txt
@@ -24,7 +24,7 @@ a commit ID or tag ID. In the first case the current time is used as
modification time of each file in the archive. In the latter case the
commit time as recorded in the referenced commit object is used instead.
Additionally the commit ID is stored in a global extended pax header.
-It can be extracted using 'git-get-tar-commit-id'.
+It can be extracted using 'git get-tar-commit-id'.
OPTIONS
-------
diff --git a/Documentation/git-update-index.txt b/Documentation/git-update-index.txt
index c2477b9..e8c19be 100644
--- a/Documentation/git-update-index.txt
+++ b/Documentation/git-update-index.txt
@@ -206,7 +206,7 @@ into the index file.
. mode SP sha1 SP stage TAB path
+
This format is to put higher order stages into the
-index file and matches 'git-ls-files --stage' output.
+index file and matches 'git ls-files --stage' output.
To place a higher stage entry to the index, the path should
first be removed by feeding a mode=0 entry for the path, and
@@ -263,8 +263,8 @@ option. To unset, use `--no-assume-unchanged`.
The command looks at `core.ignorestat` configuration variable. When
this is true, paths updated with `git update-index paths...` and
paths updated with other git commands that update both index and
-working tree (e.g. 'git-apply --index', 'git-checkout-index -u',
-and 'git-read-tree -u') are automatically marked as "assume
+working tree (e.g. 'git apply --index', 'git checkout-index -u',
+and 'git read-tree -u') are automatically marked as "assume
unchanged". Note that "assume unchanged" bit is *not* set if
`git update-index --refresh` finds the working tree file matches
the index (use `git update-index --really-refresh` if you want
@@ -317,7 +317,7 @@ unreliable, this should be set to 'false' (see linkgit:git-config[1]).
This causes the command to ignore differences in file modes recorded
in the index and the file mode on the filesystem if they differ only on
executable bit. On such an unfortunate filesystem, you may
-need to use 'git-update-index --chmod='.
+need to use 'git update-index --chmod='.
Quite similarly, if `core.symlinks` configuration variable is set
to 'false' (see linkgit:git-config[1]), symbolic links are checked out
diff --git a/Documentation/git-upload-archive.txt b/Documentation/git-upload-archive.txt
index afe6595..f5f2b39 100644
--- a/Documentation/git-upload-archive.txt
+++ b/Documentation/git-upload-archive.txt
@@ -12,7 +12,7 @@ SYNOPSIS
DESCRIPTION
-----------
-Invoked by 'git-archive --remote' and sends a generated archive to the
+Invoked by 'git archive --remote' and sends a generated archive to the
other end over the git protocol.
This command is usually not invoked directly by the end user. The UI
diff --git a/Documentation/git-web--browse.txt b/Documentation/git-web--browse.txt
index 91a54a6..7572049 100644
--- a/Documentation/git-web--browse.txt
+++ b/Documentation/git-web--browse.txt
@@ -62,7 +62,7 @@ browser.<tool>.path
You can explicitly provide a full path to your preferred browser by
setting the configuration variable 'browser.<tool>.path'. For example,
you can configure the absolute path to firefox by setting
-'browser.firefox.path'. Otherwise, 'git-web--browse' assumes the tool
+'browser.firefox.path'. Otherwise, 'git web--browse' assumes the tool
is available in PATH.
browser.<tool>.cmd
@@ -71,7 +71,7 @@ browser.<tool>.cmd
When the browser, specified by options or configuration variables, is
not among the supported ones, then the corresponding
'browser.<tool>.cmd' configuration variable will be looked up. If this
-variable exists then 'git-web--browse' will treat the specified tool
+variable exists then 'git web--browse' will treat the specified tool
as a custom command and will use a shell eval to run the command with
the URLs passed as arguments.
diff --git a/Documentation/gitcore-tutorial.txt b/Documentation/gitcore-tutorial.txt
index 202a379..c005f37 100644
--- a/Documentation/gitcore-tutorial.txt
+++ b/Documentation/gitcore-tutorial.txt
@@ -428,7 +428,7 @@ $ git update-index hello
(note how we didn't need the `\--add` flag this time, since git knew
about the file already).
-Note what happens to the different 'git-diff-\*' versions here. After
+Note what happens to the different 'git diff-\*' versions here. After
we've updated `hello` in the index, `git diff-files -p` now shows no
differences, but `git diff-index -p HEAD` still *does* show that the
current state is different from the state we committed. In fact, now
@@ -1095,7 +1095,7 @@ The 'commit walkers' are sometimes also called 'dumb
transports', because they do not require any git aware smart
server like git Native transport does. Any stock HTTP server
that does not even support directory index would suffice. But
-you must prepare your repository with 'git-update-server-info'
+you must prepare your repository with 'git update-server-info'
to help dumb transport downloaders.
Once you fetch from the remote repository, you `merge` that
@@ -1260,7 +1260,7 @@ $ git ls-files --unmerged
The next step of merging is to merge these three versions of the
file, using 3-way merge. This is done by giving
-'git-merge-one-file' command as one of the arguments to
+'git merge-one-file' command as one of the arguments to
'git merge-index' command:
------------
@@ -1270,7 +1270,7 @@ ERROR: Merge conflict in hello
fatal: merge program failed
------------
-'git-merge-one-file' script is called with parameters to
+'git merge-one-file' script is called with parameters to
describe those three versions, and is responsible to leave the
merge results in the working tree.
It is a fairly straightforward shell script, and
@@ -1487,10 +1487,10 @@ If other people are pulling from your repository over dumb
transport protocols (HTTP), you need to keep this repository
'dumb transport friendly'. After `git init`,
`$GIT_DIR/hooks/post-update.sample` copied from the standard templates
-would contain a call to 'git-update-server-info'
+would contain a call to 'git update-server-info'
but you need to manually enable the hook with
`mv post-update.sample post-update`. This makes sure
-'git-update-server-info' keeps the necessary files up-to-date.
+'git update-server-info' keeps the necessary files up-to-date.
3. Push into the public repository from your primary
repository.
diff --git a/Documentation/gitdiffcore.txt b/Documentation/gitdiffcore.txt
index 5244925..dcdea54 100644
--- a/Documentation/gitdiffcore.txt
+++ b/Documentation/gitdiffcore.txt
@@ -23,7 +23,7 @@ that is easier to understand than the conventional kind.
The chain of operation
----------------------
-The 'git-diff-{asterisk}' family works by first comparing two sets of
+The 'git diff-{asterisk}' family works by first comparing two sets of
files:
- 'git diff-index' compares contents of a "tree" object and the
@@ -74,12 +74,12 @@ into another list. There are currently 5 such transformations:
- diffcore-pickaxe
- diffcore-order
-These are applied in sequence. The set of filepairs 'git-diff-{asterisk}'
+These are applied in sequence. The set of filepairs 'git diff-{asterisk}'
commands find are used as the input to diffcore-break, and
the output from diffcore-break is used as the input to the
next transformation. The final result is then passed to the
output routine and generates either diff-raw format (see Output
-format sections of the manual for 'git-diff-{asterisk}' commands) or
+format sections of the manual for 'git diff-{asterisk}' commands) or
diff-patch format.
@@ -87,7 +87,7 @@ diffcore-break: For Splitting Up "Complete Rewrites"
----------------------------------------------------
The second transformation in the chain is diffcore-break, and is
-controlled by the -B option to the 'git-diff-{asterisk}' commands. This is
+controlled by the -B option to the 'git diff-{asterisk}' commands. This is
used to detect a filepair that represents "complete rewrite" and
break such filepair into two filepairs that represent delete and
create. E.g. If the input contained this filepair:
@@ -123,7 +123,7 @@ diffcore-rename: For Detection Renames and Copies
This transformation is used to detect renames and copies, and is
controlled by the -M option (to detect renames) and the -C option
-(to detect copies as well) to the 'git-diff-{asterisk}' commands. If the
+(to detect copies as well) to the 'git diff-{asterisk}' commands. If the
input contained these filepairs:
------------------------------------------------
@@ -168,11 +168,11 @@ number after the "-M" or "-C" option (e.g. "-M8" to tell it to use
8/10 = 80%).
Note. When the "-C" option is used with `\--find-copies-harder`
-option, 'git-diff-{asterisk}' commands feed unmodified filepairs to
+option, 'git diff-{asterisk}' commands feed unmodified filepairs to
diffcore mechanism as well as modified ones. This lets the copy
detector consider unmodified files as copy source candidates at
the expense of making it slower. Without `\--find-copies-harder`,
-'git-diff-{asterisk}' commands can detect copies only if the file that was
+'git diff-{asterisk}' commands can detect copies only if the file that was
copied happened to have been modified in the same changeset.
@@ -223,7 +223,7 @@ diffcore-pickaxe: For Detecting Addition/Deletion of Specified String
This transformation is used to find filepairs that represent
changes that touch a specified string, and is controlled by the
--S option and the `\--pickaxe-all` option to the 'git-diff-{asterisk}'
+-S option and the `\--pickaxe-all` option to the 'git diff-{asterisk}'
commands.
When diffcore-pickaxe is in use, it checks if there are
@@ -246,7 +246,7 @@ diffcore-order: For Sorting the Output Based on Filenames
This is used to reorder the filepairs according to the user's
(or project's) taste, and is controlled by the -O option to the
-'git-diff-{asterisk}' commands.
+'git diff-{asterisk}' commands.
This takes a text file each of whose lines is a shell glob
pattern. Filepairs that match a glob pattern on an earlier line
diff --git a/Documentation/githooks.txt b/Documentation/githooks.txt
index 45559fa..87e2c03 100644
--- a/Documentation/githooks.txt
+++ b/Documentation/githooks.txt
@@ -202,7 +202,7 @@ updated. If the hook exits with zero, updating of individual refs can
still be prevented by the <<update,'update'>> hook.
Both standard output and standard error output are forwarded to
-'git-send-pack' on the other end, so you can simply `echo` messages
+'git send-pack' on the other end, so you can simply `echo` messages
for the user.
[[update]]
@@ -301,7 +301,7 @@ updated values of the refs. You might consider it instead if you need
them.
When enabled, the default 'post-update' hook runs
-'git-update-server-info' to keep the information used by dumb
+'git update-server-info' to keep the information used by dumb
transports (e.g., HTTP) up-to-date. If you are publishing
a git repository that is accessible via HTTP, you should
probably enable this hook.
@@ -313,8 +313,8 @@ for the user.
pre-auto-gc
~~~~~~~~~~~
-This hook is invoked by 'git-gc --auto'. It takes no parameter, and
-exiting with non-zero status from this script causes the 'git-gc --auto'
+This hook is invoked by 'git gc --auto'. It takes no parameter, and
+exiting with non-zero status from this script causes the 'git gc --auto'
to abort.
GIT
diff --git a/Documentation/gitrepository-layout.txt b/Documentation/gitrepository-layout.txt
index 5c4700c..3cd32d6 100644
--- a/Documentation/gitrepository-layout.txt
+++ b/Documentation/gitrepository-layout.txt
@@ -151,7 +151,7 @@ info/refs::
This file helps dumb transports discover what refs are
available in this repository. If the repository is
published for dumb transports, this file should be
- regenerated by 'git-update-server-info' every time a tag
+ regenerated by 'git update-server-info' every time a tag
or branch is created or modified. This is normally done
from the `hooks/update` hook, which is run by the
'git-receive-pack' command when you 'git push' into the
--
1.6.6.218.g502b0
^ permalink raw reply related
* Re: [PATCH v2 0/4] Documentation style fixes
From: Thomas Rast @ 2010-01-10 12:10 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git, Jonathan Nieder
In-Reply-To: <7vfx6efox9.fsf@alter.siamese.dyndns.org>
Junio C Hamano wrote:
>
> I'd like to proceed with this series by (1) pulling from you and queuing
> the result in 'next', (2) asking other people (including Jonathan) to
> proofread and send necessary updates to the list, (3) asking you to check
> and queue these updates from others yourself and tell me to pull again to
> my 'next', and (4) merging the result to 'master' when done.
>
> Does it sound workable? Am I placing too much undue burden on you?
No, that's fine, and indeed I'm glad I'm not putting too much
conflict-resolution burden on you.
I took the not-yet-merged (I hope I understood the above right :-)
liberty of squashing fixes from Jonathan's review. I'll send the
interdiffs as a reply to this mail. They're now at
git://repo.or.cz/git/trast.git doc-style/for-next
(I'm leaving the old head in place for comparison). I'm gathering
incremental updates in
git://repo.or.cz/git/trast.git doc-style/pu
For now we have
Jonathan Nieder (2):
Documentation: git gc packs refs by default now
Documentation: tiny git config manual tweaks
Thomas Rast (1):
Documentation: show-files is now called git-ls-files
I'll also send the last one for review shortly, though it's rather
trivial.
--
Thomas Rast
trast@{inf,student}.ethz.ch
^ permalink raw reply
* Саня *** Ti-3 *** Бурим добавил Вас в друзья на сайте ВКонтакте.ру
From: ВКонтакте.ру @ 2010-01-10 11:42 UTC (permalink / raw)
To: Здравствуйте
Здравствуйте,
Саня *** Ti-3 *** Бурим добавил Вас в друзья на сайте ВКонтакте.ру
Вы можете зайти на сайт и просмотреть страницы Ваших друзей, используя
Ваш e-mail и автоматически созданный пароль: 6eoRw9MC
ВКонтакте.ру - сайт, который ежедневно позволяет десяткам миллионов людей находить старых друзей и оставаться с ними на связи, делиться фотографиями
и событиями из жизни.
Чтобы войти на сайт, пройдите по ссылке:
http://vk.com/login.php?regemail=git@vger.kernel.org#6eoRw9MC
Внимание: Ваша регистрация не будет активирована, если Вы проигнорируете
это приглашение.
Желаем удачи!
С уважением,
Администрация ВКонтакте.ру
^ permalink raw reply
* Re: [PATCH] git-p4: Fix empty submit template when editor fires up
From: Jonathan Nieder @ 2010-01-10 11:14 UTC (permalink / raw)
To: Kevin Leung; +Cc: git, Simon Hausmann, gitster
In-Reply-To: <20100110111153.GA19612@progeny.tock>
Jonathan Nieder wrote:
> Kevin Leung wrote:
> > read_pipe() returns "\n". We need to remove it before passing it
> > to system().
> >
> > Signed-off-by: Kevin Leung <kevinlsk@gmail.com>
>
> If I understand correctly, this is a cosmetic change:
... and of course I didn't the subject. Sorry about that. Thanks
for cleaning up my mess.
Acked-by: Jonathan Nieder <jrnieder@gmail.com>
> What is the rationale for the rewritten system() line? I would have
> understood a change to
>
> os.spawnlp("sh", "-c", editor + " \"$@\"", fileName)
I am still curious about this, though it is not so important.
Jonathan
^ permalink raw reply
* How to check new commit availability without full fetch?
From: Leo Razoumov @ 2010-01-10 11:12 UTC (permalink / raw)
To: Git Mailing List
Hi List,
I am trying to find a way to check availability of new commits
*before* doing fetch or pull. Unfortunately, neither fetch nor pull
take "--dry-run" option (unlike push)
I am sure I am not the only one with such an itch.
Any help and advice are greatly appreciated.
--Leo--
^ permalink raw reply
* Re: [PATCH] git-p4: Fix empty submit template when editor fires up
From: Jonathan Nieder @ 2010-01-10 11:11 UTC (permalink / raw)
To: Kevin Leung; +Cc: git, Simon Hausmann, gitster
In-Reply-To: <1262235876-1239-1-git-send-email-kevinlsk@gmail.com>
Kevin Leung wrote:
> read_pipe() returns "\n". We need to remove it before passing it
> to system().
>
> Signed-off-by: Kevin Leung <kevinlsk@gmail.com>
If I understand correctly, this is a cosmetic change: os.system()
calls system(3), which uses 'sh -c', which has no problem coping with
an extra newline at the end. So 'need' seems too strong a word.
Still, the change sounds sensible.
> ---
> contrib/fast-import/git-p4 | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/contrib/fast-import/git-p4 b/contrib/fast-import/git-p4
> index 0cef242..04bf4f4 100755
> --- a/contrib/fast-import/git-p4
> +++ b/contrib/fast-import/git-p4
> @@ -732,8 +732,8 @@ class P4Submit(Command):
> if os.environ.has_key("P4EDITOR"):
> editor = os.environ.get("P4EDITOR")
> else:
> - editor = read_pipe("git var GIT_EDITOR")
> - system(editor + " " + fileName)
> + editor = read_pipe("git var GIT_EDITOR").strip()
> + system("%s %s" % (editor, fileName))
>
> response = "y"
> if os.stat(fileName).st_mtime <= mtime:
> --
What is the rationale for the rewritten system() line? I would have
understood a change to
os.spawnlp("sh", "-c", editor + " \"$@\"", fileName)
for better behavior when TMPDIR contains shell metacharacters, but
even this has nothing to do with read_pipe() returning a trailing
newline.
Just my two cents,
Jonathan
^ permalink raw reply
* Re: [PATCH 2/2] Use $(git rev-parse --show-toplevel) in cd_to_toplevel()
From: Jonathan Nieder @ 2010-01-10 10:11 UTC (permalink / raw)
To: Steven Drake; +Cc: git
In-Reply-To: <alpine.LNX.2.00.1001102016380.2560@vqena.qenxr.bet.am>
Steven Drake wrote:
> 'cd -P' is not supported by all shell implementations.
Makes sense.
git already does not handle those cases where 'cd "$(pwd)"' fails
while 'cd .' does not, so your patch shouldn’t break anything. [1]
> diff --git a/git-sh-setup.sh b/git-sh-setup.sh
> index dfcb807..3cbec05 100755
> --- a/git-sh-setup.sh
> +++ b/git-sh-setup.sh
> @@ -120,16 +120,10 @@ is_bare_repository () {
> }
>
> cd_to_toplevel () {
> - cdup=$(git rev-parse --show-cdup)
> - if test ! -z "$cdup"
> + if test ! -z "$(git rev-parse --show-cdup)"
> then
> - # The "-P" option says to follow "physical" directory
> - # structure instead of following symbolic links. When cdup is
> - # "../", this means following the ".." entry in the current
> - # directory instead textually removing a symlink path element
> - # from the PWD shell variable. The "-P" behavior is more
> - # consistent with the C-style chdir used by most of Git.
> - cd -P "$cdup" || {
> + cdup=$(git rev-parse --show-toplevel)
> + cd "$cdup" || {
Why not 'cdup=$(git rev-parse --show-toplevel) && cd "$cdup"'
unconditionally? That would avoid having to look for the .git dir
twice and would mirror setup_work_tree() a bit more closely.
Avoiding -P not only improves portability but makes the function
easier to understand. I like it.
Thanks,
Jonathan
[1] http://thread.gmane.org/gmane.comp.version-control.git/135563/focus=135571
^ permalink raw reply
* Re: Linking multiple Git repositories for version tracking
From: Christoph Jahn @ 2010-01-10 8:12 UTC (permalink / raw)
To: git
In-Reply-To: <op.u574cwxqn3qeew@klee>
I have had the very same issue a while ago when still using SVN (shame on
me ;-). SVN offers a special tag "svn:externals" which is something like
symlinks. Having used it for a while I came to the conclusion that such a
thing, as well-intentioned as it may be, is something I want to avoid by
all means.
There are two reasons for that:
- Lock-in
- It is conceptually wrong
The conceptual part -which I consider to be more important- is mostly
about the fact that we are talking about dependency management and not
version control any more. Do I really want to "hide" dependencies inside
the VCS? Also, there may be different dependencies for compilation and
testing. That's why I chose to use Maven for this task.
My $0.02
--
Best regards,
Christoph
^ permalink raw reply
* [PATCH 1/2] Add 'git rev-parse --show-toplevel' option.
From: Steven Drake @ 2010-01-10 7:19 UTC (permalink / raw)
To: git
Shows the absolute path of the top-level working directory.
---
Documentation/git-rev-parse.txt | 3 +++
builtin-rev-parse.c | 6 ++++++
2 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/Documentation/git-rev-parse.txt b/Documentation/git-rev-parse.txt
index 82045a2..dc829b3 100644
--- a/Documentation/git-rev-parse.txt
+++ b/Documentation/git-rev-parse.txt
@@ -112,6 +112,9 @@ OPTIONS
--remotes::
Show tag refs found in `$GIT_DIR/refs/remotes`.
+--show-toplevel::
+ Show the absolute path of the top-level directory.
+
--show-prefix::
When the command is invoked from a subdirectory, show the
path of the current directory relative to the top-level
diff --git a/builtin-rev-parse.c b/builtin-rev-parse.c
index 37d0233..96ab8bb 100644
--- a/builtin-rev-parse.c
+++ b/builtin-rev-parse.c
@@ -581,6 +581,12 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix)
for_each_remote_ref(show_reference, NULL);
continue;
}
+ if (!strcmp(arg, "--show-toplevel")) {
+ const char *work_tree = get_git_work_tree();
+ if (work_tree)
+ printf("%s\n", work_tree);
+ continue;
+ }
if (!strcmp(arg, "--show-prefix")) {
if (prefix)
puts(prefix);
--
1.6.4
^ permalink raw reply related
* [PATCH 2/2] Use $(git rev-parse --show-toplevel) in cd_to_toplevel()
From: Steven Drake @ 2010-01-10 7:19 UTC (permalink / raw)
To: git
as it gives the absolute (aka "physical") path of the toplevel directory
and 'cd -P' is not supported by all shell implementations.
See NetBSD PR/42168.
http://www.netbsd.org/cgi-bin/query-pr-single.pl?number=42168
---
git-sh-setup.sh | 12 +++---------
1 files changed, 3 insertions(+), 9 deletions(-)
diff --git a/git-sh-setup.sh b/git-sh-setup.sh
index dfcb807..3cbec05 100755
--- a/git-sh-setup.sh
+++ b/git-sh-setup.sh
@@ -120,16 +120,10 @@ is_bare_repository () {
}
cd_to_toplevel () {
- cdup=$(git rev-parse --show-cdup)
- if test ! -z "$cdup"
+ if test ! -z "$(git rev-parse --show-cdup)"
then
- # The "-P" option says to follow "physical" directory
- # structure instead of following symbolic links. When cdup is
- # "../", this means following the ".." entry in the current
- # directory instead textually removing a symlink path element
- # from the PWD shell variable. The "-P" behavior is more
- # consistent with the C-style chdir used by most of Git.
- cd -P "$cdup" || {
+ cdup=$(git rev-parse --show-toplevel)
+ cd "$cdup" || {
echo >&2 "Cannot chdir to $cdup, the toplevel of the working tree"
exit 1
}
--
1.6.4
^ permalink raw reply related
* Re: [PATCH v2 0/4] Documentation style fixes
From: Junio C Hamano @ 2010-01-10 7:12 UTC (permalink / raw)
To: Thomas Rast; +Cc: git, Junio C Hamano, Jonathan Nieder
In-Reply-To: <201001100107.29920.trast@student.ethz.ch>
Thomas Rast <trast@student.ethz.ch> writes:
> Turns out the fourth patch is over 200kB and can't be sent over the
> list. I pushed the whole series to
>
> git://repo.or.cz/git/sbeyer.git t/doc-merge-revamp
I think you meant s/sbeyer/trast/ ;-)
^ permalink raw reply
* Re: [PATCH v2 0/4] Documentation style fixes
From: Junio C Hamano @ 2010-01-10 6:34 UTC (permalink / raw)
To: Thomas Rast; +Cc: git, Jonathan Nieder
In-Reply-To: <201001100107.29920.trast@student.ethz.ch>
As to the general direction I am in full agreement with what you and
Jonathan discussed in the review of your series, namely:
- We prefer dashless these days;
- Reference to a concrete command line is <code>git clone</code> which is
typeset differently from general descriptions of what <emphasis>git
clone</emphasis> command does.
I'd like to proceed with this series by (1) pulling from you and queuing
the result in 'next', (2) asking other people (including Jonathan) to
proofread and send necessary updates to the list, (3) asking you to check
and queue these updates from others yourself and tell me to pull again to
my 'next', and (4) merging the result to 'master' when done.
Does it sound workable? Am I placing too much undue burden on you?
^ permalink raw reply
* Re: [PATCH] ls-files: fix overeager pathspec optimization
From: Junio C Hamano @ 2010-01-10 6:31 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Jeff King, Michael J Gruber, Jon Schewe, spearce, git
In-Reply-To: <alpine.LFD.2.00.1001091004380.7821@localhost.localdomain>
Linus Torvalds <torvalds@linux-foundation.org> writes:
> On Sat, 9 Jan 2010, Junio C Hamano wrote:
>>
>> Having sent these patches, I am wondering if the simplest fix might be this
>> one-liner.
>>
>> diff --git a/dir.c b/dir.c
>> index d0999ba..7fba335 100644
>> --- a/dir.c
>> +++ b/dir.c
>> @@ -788,3 +788,3 @@ int read_directory(struct dir_struct *dir, const char *path, int len, const char
>> simplify = create_simplify(pathspec);
>> - read_directory_recursive(dir, path, len, 0, simplify);
>> + read_directory_recursive(dir, "", 0, 0, simplify);
>> free_simplify(simplify);
>
> That one-liner doesn't work at all for me.
> ...
> IOW, it now ignores _everything_, because the dir and the path don't
> match.
Hmph, you are right. The real series is not equivalent to the one-liner
at all.
^ permalink raw reply
* Re: [PATCH v2 2/4] Documentation: warn prominently against merging with dirty trees
From: Junio C Hamano @ 2010-01-10 6:31 UTC (permalink / raw)
To: Jonathan Nieder; +Cc: Thomas Rast, git, Junio C Hamano
In-Reply-To: <20100110044949.GA8974@progeny.tock>
Jonathan Nieder <jrnieder@gmail.com> writes:
> | 1. Even if you may have local modifications in your working tree, you
> | can safely say "git pull" when you know that the change in the other
> | branch does not overlap with them.
> | 2. After inspecting the result of the merge, you may find that the
> | change in the other branch is unsatisfactory. Running "git reset
> | --hard ORIG_HEAD" will let you go back to where you were, but it will
> | discard your local changes, which you do not want. "git reset --merge"
> | keeps your local changes.
>
>> while possible, it leaves you in a state that is hard to
>> +back out of in the case of a conflict.
>> +
>
> Oh, that is a problem. Maybe 'git merge' should refuse to merge
> unless told otherwise, if there is a dirty index and there might be
> conflicts.
"git reset --merge" will keep your local changes after such a merge, and
"mergy" operations (not just "merge" but also "revert", "am -3", etc)
won't get you into a situation where you cannot, by refusing to do
anything when e.g. your index is dirty. Especially when Christian's
"reset --merge" update becomes solid, "... is hard to back out of" will
become a false statement.
Of course, the user needs to understand what he or she is doing (see
http://thread.gmane.org/gmane.comp.version-control.git/136166/focus=136171
for example). And that is one reason we (at least I) try to teach new
people to start working from a clean tree, until they get comfortable
working with mergy operations.
^ permalink raw reply
* Re: [PATCH v2 2/4] Documentation: warn prominently against merging with dirty trees
From: Jonathan Nieder @ 2010-01-10 4:49 UTC (permalink / raw)
To: Thomas Rast; +Cc: git, Junio C Hamano
In-Reply-To: <e330d8ca1a9ec38ce40b0f67123b1dd893f0b31c.1263081032.git.trast@student.ethz.ch>
Thomas Rast wrote:
> diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt
> index 4896587..3277f4e 100644
> --- a/Documentation/git-merge.txt
> +++ b/Documentation/git-merge.txt
> @@ -22,6 +22,10 @@ The second syntax (<msg> `HEAD` <commit>...) is supported for
> historical reasons. Do not use it from the command line or in
> new scripts. It is the same as `git merge -m <msg> <commit>...`.
>
> +*Warning*: Running 'git-merge' with uncommitted changes is
> +discouraged:
Is this true? The 'git reset' manual page gives an example of something
I end up doing pretty often:
| Undo a merge or pull inside a dirty work tree
|
| $ git pull (1)
| Auto-merging nitfol
| Merge made by recursive.
| nitfol | 20 +++++----
| ...
| $ git reset --merge ORIG_HEAD (2)
|
| 1. Even if you may have local modifications in your working tree, you
| can safely say "git pull" when you know that the change in the other
| branch does not overlap with them.
| 2. After inspecting the result of the merge, you may find that the
| change in the other branch is unsatisfactory. Running "git reset
| --hard ORIG_HEAD" will let you go back to where you were, but it will
| discard your local changes, which you do not want. "git reset --merge"
| keeps your local changes.
> while possible, it leaves you in a state that is hard to
> +back out of in the case of a conflict.
> +
Oh, that is a problem. Maybe 'git merge' should refuse to merge
unless told otherwise, if there is a dirty index and there might be
conflicts.
In other words, would it be possible to fix this without relying on
people to look at the documentation?
Jonathan
^ permalink raw reply
* Re: [PATCH v2 1/4] Documentation/git-merge: reword references to "remote" and "pull"
From: Jonathan Nieder @ 2010-01-10 4:13 UTC (permalink / raw)
To: Thomas Rast; +Cc: git, Junio C Hamano
In-Reply-To: <57bddb115331a23816af772172531fb56fceace4.1263081032.git.trast@student.ethz.ch>
Thomas Rast wrote:
> The git-merge manpage was written in terms of merging a "remote",
> which is no longer the case: you merge local or remote-tracking
> branches; pull is for actual remotes.
Right.
> Adjust the manpage accordingly. We refer to the arguments as
> "commits", and change instances of "remote" to "other" (where branches
> are concerned) or "theirs" (where conflict sides are concerned).
Makes sense. It might be nice to emphasize the metaphor of merging
another branch’s history into the current branch, but <commit>
really does seem clearer than ‘{ <branch> | <commit> }’ or any other
alternative I can come up with.
> diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt
> index e886c2e..4896587 100644
> --- a/Documentation/git-merge.txt
> +++ b/Documentation/git-merge.txt
> @@ -10,17 +10,17 @@ SYNOPSIS
> --------
> [verse]
> 'git merge' [-n] [--stat] [--no-commit] [--squash] [-s <strategy>]...
> - [-m <msg>] <remote>...
> -'git merge' <msg> HEAD <remote>...
> + [-m <msg>] <commit>...
> +'git merge' <msg> HEAD <commit>...
>
> DESCRIPTION
> -----------
> -This is the top-level interface to the merge machinery
> -which drives multiple merge strategy scripts.
> +Merges the history specified by <commit> into HEAD, optionally using a
> +specific merge strategy.
Perhaps just
| Rejoins two or more diverging branches of development.
would be simpler. The ability to choose a merge strategy seems more
like a detail for later.
> -The second syntax (<msg> `HEAD` <remote>) is supported for
> +The second syntax (<msg> `HEAD` <commit>...) is supported for
> historical reasons. Do not use it from the command line or in
> -new scripts. It is the same as `git merge -m <msg> <remote>`.
> +new scripts. It is the same as `git merge -m <msg> <commit>...`.
Technically, they are not entirely the same: ‘merge -m <msg>’ will
warn that the log message is ignored when the merge results in a
fast-forward, whereas ‘merge <msg> HEAD’ will not. See commit
77c29b4a (Revert recent "git merge <msg> HEAD <commit>..."
deprecation, 2009-12-08). So should this say
| Use `git merge -m <msg> <commit>...` instead.
to side-step the issue? Not sure.
> @@ -33,10 +33,10 @@ include::merge-options.txt[]
> used to give a good default for automated 'git merge'
> invocations.
>
> -<remote>...::
> - Other branch heads to merge into our branch. You need at
> - least one <remote>. Specifying more than one <remote>
> - obviously means you are trying an Octopus.
> +<commit>...::
> + Commits, usually other branch heads, to merge into our branch.
> + You need at least one <commit>. Specifying more than one
> + <commit> obviously means you are trying an Octopus.
Nice.
> @@ -96,8 +96,8 @@ file matches exactly the current `HEAD` commit; otherwise we
> will write out your local changes already registered in your
> index file along with the merge result, which is not good.
> Because 1. involves only those paths differing between your
> -branch and the remote branch you are pulling from during the
> -merge (which is typically a fraction of the whole tree), you can
> +branch and the branch you are merging
> +(which is typically a fraction of the whole tree), you can
Hmm. The old wording distinguishes nicely between the HEAD and
MERGE_HEAD that will be parents for the new HEAD. From some points
of view, the new wording does not: both are branches you are
merging (though only one is an argument to 'git merge').
Sadly, I have not come up with a good expression for “the other
commit whose history is to be incorporated into the current
branch”.
Maybe we should punt and just say “the other branch”?
> @@ -202,15 +202,15 @@ You can work through the conflict with a number of tools:
> mergetool which will work you through the merge.
>
> * Look at the diffs. 'git diff' will show a three-way diff,
> - highlighting changes from both the HEAD and remote versions.
> + highlighting changes from both the HEAD and their versions.
>
> * Look at the diffs on their own. 'git log --merge -p <path>'
This is a bit awkward, since 'they' is playing two roles. Also,
the context does not make it obvious what 'our' and 'their'
versions are.
Maybe:
| * Look at the diffs. 'git diff' will show a three-way diff,
| highlighting changes from both the HEAD and MERGE_HEAD
| versions.
|
| * Look at the diffs from each branch. 'git log --merge -p
| <path>' will show diffs first for the HEAD version and
| then the MERGE_HEAD version.
|
| * Look at the originals. 'git show :1:filename' shows the
| common ancestor, 'git show :2:filename' shows the HEAD
| version, and 'git show :3:filename' shows the MERGE_HEAD
| version.
Thanks for looking into this,
Jonathan
^ permalink raw reply
* [PATCH 4/4] git-diff.txt: Link to git-difftool
From: David Aguilar @ 2010-01-10 4:02 UTC (permalink / raw)
To: gitster; +Cc: git, markus.heidelberg
In-Reply-To: <1263096163-15743-1-git-send-email-davvid@gmail.com>
Signed-off-by: David Aguilar <davvid@gmail.com>
---
Documentation/git-diff.txt | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/Documentation/git-diff.txt b/Documentation/git-diff.txt
index 0ac7112..723a648 100644
--- a/Documentation/git-diff.txt
+++ b/Documentation/git-diff.txt
@@ -157,6 +157,10 @@ $ git diff -R <2>
rewrites (very expensive).
<2> Output diff in reverse.
+SEE ALSO
+--------
+linkgit:git-difftool[1]::
+ Show changes using common diff tools
Author
------
--
1.6.6.4.g20a38b.dirty
^ permalink raw reply related
* [PATCH 3/4] difftool: Allow specifying unconfigured commands with --extcmd
From: David Aguilar @ 2010-01-10 4:02 UTC (permalink / raw)
To: gitster; +Cc: git, markus.heidelberg
In-Reply-To: <1263096163-15743-1-git-send-email-davvid@gmail.com>
git-difftool requires difftool.<tool>.cmd configuration even when
tools use the standard "$diffcmd $from $to" form. This teaches
git-difftool to run these tools in lieu of configuration by
allowing the command to be specified on the command line.
Reference: http://article.gmane.org/gmane.comp.version-control.git/133377
Signed-off-by: David Aguilar <davvid@gmail.com>
---
Documentation/git-difftool.txt | 5 +++++
git-difftool--helper.sh | 30 +++++++++++++++++++++++-------
git-difftool.perl | 4 ++++
t/t7800-difftool.sh | 19 ++++++++++++++++++-
4 files changed, 50 insertions(+), 8 deletions(-)
diff --git a/Documentation/git-difftool.txt b/Documentation/git-difftool.txt
index a5bce62..f67d2db 100644
--- a/Documentation/git-difftool.txt
+++ b/Documentation/git-difftool.txt
@@ -58,6 +58,11 @@ is set to the name of the temporary file containing the contents
of the diff post-image. `$BASE` is provided for compatibility
with custom merge tool commands and has the same value as `$LOCAL`.
+--extcmd=<command>::
+ Specify a custom command for viewing diffs.
+ 'git-difftool' ignores the configured defaults and runs
+ `$command $LOCAL $REMOTE` when this option is specified.
+
-g::
--gui::
When 'git-difftool' is invoked with the `-g` or `--gui` option
diff --git a/git-difftool--helper.sh b/git-difftool--helper.sh
index 3621f28..d806eae 100755
--- a/git-difftool--helper.sh
+++ b/git-difftool--helper.sh
@@ -19,6 +19,11 @@ should_prompt () {
fi
}
+# Indicates that --extcmd=... was specified
+use_ext_cmd () {
+ test -n "$GIT_DIFFTOOL_EXTCMD"
+}
+
launch_merge_tool () {
# Merged is the filename as it appears in the work tree
# Local is the contents of a/filename
@@ -33,18 +38,29 @@ launch_merge_tool () {
# the user with the real $MERGED name before launching $merge_tool.
if should_prompt; then
printf "\nViewing: '$MERGED'\n"
- printf "Hit return to launch '%s': " "$merge_tool"
+ if use_ext_cmd; then
+ printf "Hit return to launch '%s': " \
+ "$GIT_DIFFTOOL_EXTCMD"
+ else
+ printf "Hit return to launch '%s': " "$merge_tool"
+ fi
read ans
fi
- run_merge_tool "$merge_tool"
+ if use_ext_cmd; then
+ $GIT_DIFFTOOL_EXTCMD "$LOCAL" "$REMOTE"
+ else
+ run_merge_tool "$merge_tool"
+ fi
+
}
-# GIT_DIFF_TOOL indicates that --tool=... was specified
-if test -n "$GIT_DIFF_TOOL"; then
- merge_tool="$GIT_DIFF_TOOL"
-else
- merge_tool="$(get_merge_tool)" || exit
+if ! use_ext_cmd; then
+ if test -n "$GIT_DIFF_TOOL"; then
+ merge_tool="$GIT_DIFF_TOOL"
+ else
+ merge_tool="$(get_merge_tool)" || exit
+ fi
fi
# Launch the merge tool on each path provided by 'git diff'
diff --git a/git-difftool.perl b/git-difftool.perl
index 8c836e4..f8ff245 100755
--- a/git-difftool.perl
+++ b/git-difftool.perl
@@ -62,6 +62,10 @@ sub generate_command
$skip_next = 1;
next;
}
+ if ($arg =~ /^--extcmd=/) {
+ $ENV{GIT_DIFFTOOL_EXTCMD} = substr($arg, 9);
+ next;
+ }
if ($arg =~ /^--tool=/) {
$ENV{GIT_DIFF_TOOL} = substr($arg, 7);
next;
diff --git a/t/t7800-difftool.sh b/t/t7800-difftool.sh
index eca51a8..8ee186a 100755
--- a/t/t7800-difftool.sh
+++ b/t/t7800-difftool.sh
@@ -214,7 +214,24 @@ test_expect_success 'difftool.<tool>.path' '
diff=$(git difftool --tool=tkdiff --no-prompt branch) &&
git config --unset difftool.tkdiff.path &&
lines=$(echo "$diff" | grep file | wc -l) &&
- test "$lines" -eq 1
+ test "$lines" -eq 1 &&
+
+ restore_test_defaults
+'
+
+test_expect_success 'difftool --extcmd=...' '
+ diff=$(git difftool --no-prompt --extcmd=cat branch) &&
+
+ lines=$(echo "$diff" | wc -l) &&
+ test "$lines" -eq 2 &&
+
+ lines=$(echo "$diff" | grep master | wc -l) &&
+ test "$lines" -eq 1 &&
+
+ lines=$(echo "$diff" | grep branch | wc -l) &&
+ test "$lines" -eq 1 &&
+
+ restore_test_defaults
'
test_done
--
1.6.6.4.g20a38b.dirty
^ permalink raw reply related
* [PATCH 2/4] difftool--helper: Remove use of the GIT_MERGE_TOOL variable
From: David Aguilar @ 2010-01-10 4:02 UTC (permalink / raw)
To: gitster; +Cc: git, markus.heidelberg
In-Reply-To: <1263096163-15743-1-git-send-email-davvid@gmail.com>
An undocumented mis-feature in git-difftool is that it allows you
to specify a default difftool by setting GIT_MERGE_TOOL.
This behavior was never documented and was included as an
oversight back when git-difftool was maintained outside of git.
git-mergetool never honored GIT_MERGE_TOOL so neither should
git-difftool.
Signed-off-by: David Aguilar <davvid@gmail.com>
---
git-difftool--helper.sh | 9 ++++-----
t/t7800-difftool.sh | 9 ---------
2 files changed, 4 insertions(+), 14 deletions(-)
diff --git a/git-difftool--helper.sh b/git-difftool--helper.sh
index 1b13808..3621f28 100755
--- a/git-difftool--helper.sh
+++ b/git-difftool--helper.sh
@@ -40,11 +40,10 @@ launch_merge_tool () {
run_merge_tool "$merge_tool"
}
-# Allow GIT_DIFF_TOOL and GIT_MERGE_TOOL to provide default values
-test -n "$GIT_MERGE_TOOL" && merge_tool="$GIT_MERGE_TOOL"
-test -n "$GIT_DIFF_TOOL" && merge_tool="$GIT_DIFF_TOOL"
-
-if test -z "$merge_tool"; then
+# GIT_DIFF_TOOL indicates that --tool=... was specified
+if test -n "$GIT_DIFF_TOOL"; then
+ merge_tool="$GIT_DIFF_TOOL"
+else
merge_tool="$(get_merge_tool)" || exit
fi
diff --git a/t/t7800-difftool.sh b/t/t7800-difftool.sh
index 9bf6c98..eca51a8 100755
--- a/t/t7800-difftool.sh
+++ b/t/t7800-difftool.sh
@@ -32,7 +32,6 @@ restore_test_defaults()
# Restores the test defaults used by several tests
remove_config_vars
unset GIT_DIFF_TOOL
- unset GIT_MERGE_TOOL
unset GIT_DIFFTOOL_PROMPT
unset GIT_DIFFTOOL_NO_PROMPT
git config diff.tool test-tool &&
@@ -107,15 +106,7 @@ test_expect_success 'GIT_DIFF_TOOL overrides' '
git config diff.tool bogus-tool &&
git config merge.tool bogus-tool &&
- GIT_MERGE_TOOL=test-tool &&
- export GIT_MERGE_TOOL &&
- diff=$(git difftool --no-prompt branch) &&
- test "$diff" = "branch" &&
- unset GIT_MERGE_TOOL &&
-
- GIT_MERGE_TOOL=bogus-tool &&
GIT_DIFF_TOOL=test-tool &&
- export GIT_MERGE_TOOL &&
export GIT_DIFF_TOOL &&
diff=$(git difftool --no-prompt branch) &&
--
1.6.6.4.g20a38b.dirty
^ permalink raw reply related
* [PATCH 1/4] difftool--helper: Update copyright and remove distracting comments
From: David Aguilar @ 2010-01-10 4:02 UTC (permalink / raw)
To: gitster; +Cc: git, markus.heidelberg
Some of the comments in git-difftool--helper are not needed because
the code is sufficiently readable without them.
Signed-off-by: David Aguilar <davvid@gmail.com>
---
git-difftool--helper.sh | 5 +----
1 files changed, 1 insertions(+), 4 deletions(-)
diff --git a/git-difftool--helper.sh b/git-difftool--helper.sh
index 57e8e32..1b13808 100755
--- a/git-difftool--helper.sh
+++ b/git-difftool--helper.sh
@@ -3,9 +3,8 @@
# This script is typically launched by using the 'git difftool'
# convenience command.
#
-# Copyright (c) 2009 David Aguilar
+# Copyright (c) 2009-2010 David Aguilar
-# Load common functions from git-mergetool--lib
TOOL_MODE=diff
. git-mergetool--lib
@@ -20,7 +19,6 @@ should_prompt () {
fi
}
-# Sets up shell variables and runs a merge tool
launch_merge_tool () {
# Merged is the filename as it appears in the work tree
# Local is the contents of a/filename
@@ -39,7 +37,6 @@ launch_merge_tool () {
read ans
fi
- # Run the appropriate merge tool command
run_merge_tool "$merge_tool"
}
--
1.6.6.4.g20a38b.dirty
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox