Commit Graph

4336 Commits

Author SHA1 Message Date
Junio C Hamano
230f544e87 Merge branch 'jc/diff'
* jc/diff:
  builtin-diff: call it "git-diff", really.
  builtin-diff.c: die() formatting type fix.
  built-in diff: assorted updates.
  built-in diff.
2006-05-03 23:54:34 -07:00
Junio C Hamano
6b16250a45 Merge branch 'js/repoconfig'
* js/repoconfig:
  repo-config: deconvolute logics
  repo-config: readability fixups.
  repo-config: support --get-regexp
2006-05-03 23:41:28 -07:00
Junio C Hamano
d820f91871 Merge branch 'jc/count'
* jc/count:
  builtin-count-objects: open packs when running -v
  builtin-count-objects: make it official.
  built-in count-objects.
2006-05-03 23:40:39 -07:00
Junio C Hamano
5dfde87156 Merge branch 'js/remoteconfig'
* js/remoteconfig:
  Revert "fetch, pull: ask config for remote information"
  fetch, pull: ask config for remote information
  builtin-push: also ask config for remote information
  builtin-push: make it official.
  Fix builtin-push to honor Push: lines in remotes file.
  builtin-push: resurrect parsing of Push: lines
  git builtin "push"
2006-05-03 23:28:09 -07:00
Junio C Hamano
dd371b49f9 Merge branch 'maint'
* maint:
  Add a few more words to the glossary.
  Added definitions for a few words:
  Alphabetize the glossary.
2006-05-03 23:00:02 -07:00
Jon Loeliger
7abd7117ec Add a few more words to the glossary.
Clean up a few entries and fix typos.

    bare repository
    cherry-picking
    hook
    topic branch

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

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

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

Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 22:31:50 -07:00
Jon Loeliger
aa9b1573a5 Alphabetize the glossary.
Signed-off-by: Jon Loeliger <jdl@jdl.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 22:31:43 -07:00
Linus Torvalds
dcb3450fd8 sha1_to_hex() usage cleanup
Somebody on the #git channel complained that the sha1_to_hex() thing uses
a static buffer which caused an error message to show the same hex output
twice instead of showing two different ones.

That's pretty easily rectified by making it uses a simple LRU of a few
buffers, which also allows some other users (that were aware of the buffer
re-use) to be written in a more straightforward manner.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 22:06:45 -07:00
Junio C Hamano
935e714204 Merge branch 'fix'
* fix:
  fix various typos in documentation
2006-05-03 17:15:06 -07:00
Fredrik Kuivinen
899707dac0 blame: Fix path pruning
This makes git-blame useable again, it has been totally broken for
some time on larger repositories.

Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 17:09:36 -07:00
Martin Langhoff
095acb8a2a cvsserver: use git-rev-list instead of git-log
Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 16:32:28 -07:00
Johannes Schindelin
8f5ff31f8e repo-config: deconvolute logics
It was rightly noticed that the logic is quite convoluted. Fix that.

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 16:26:29 -07:00
Linus Torvalds
c8c893c62b Fix "git-log --parents" breakage post v1.3.0
Post 1.3.0 "git log" forgets to list parent commits on the first line
when --parents is given.  git-cvsserver relied on it.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 14:19:02 -07:00
Matthias Kestenholz
060729dd7e add documentation for update-index --unresolve
Signed-off-by: Matthias Kestenholz <matthias@spinlock.ch>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 14:19:01 -07:00
Matthias Kestenholz
de5f2bf361 fix various typos in documentation
Signed-off-by: Matthias Kestenholz <matthias@spinlock.ch>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-03 14:08:41 -07:00
Junio C Hamano
80fe7d2b54 builtin-count-objects: open packs when running -v
Otherwise we would report absolutely no objects in a fully
packed repository.

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

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

will output something like

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

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-02 20:09:54 -07:00
Junio C Hamano
3d990f110c Merge git://git.kernel.org/pub/scm/gitk/gitk
* git://git.kernel.org/pub/scm/gitk/gitk:
  gitk: Allow view to specify arbitrary arguments to git-rev-list
  gitk: Fix file list display when files are renamed
  gitk: Basic support for highlighting one view within another
  gitk: Add a tree-browsing mode
  gitk: Use a text widget for the file list
  gitk: add menu item for editing the current view
  gitk: Implement "permanent" views (stored in ~/.gitk)
  gitk: Use git-rev-parse only to identify file/dir names on cmd line
  gitk: Remember the view in the history list
  gitk: Don't reread git-rev-list output from scratch on view switch
  gitk: Fix various bugs in the view support
  gitk: Make File->Update work properly again
  gitk: Implement multiple views
  [PATCH] gitk: Add a visual tag for remote refs
2006-05-02 20:07:14 -07:00
Paul Mackerras
098dd8a34b gitk: Allow view to specify arbitrary arguments to git-rev-list
The list of arguments to git-rev-list, including arguments that
select the range of commits, is now a part of the view specification.
If any arguments are given to gitk, they become part of the
"Command line" view, and the non-file arguments become the default
for any new views created.

Getting an error from git-rev-list is no longer fatal; instead the
error window pops up, and when you press OK, the main window just
shows "No commits selected".

The git-rev-list arguments are entered in an entry widget in the
view editor window using shell quoting conventions, not Tcl quoting
conventions.

Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-05-03 09:32:53 +10:00
Junio C Hamano
782b3b6aaf Merge branch 'fix'
* fix:
  git-send-email: fix version string to be valid perl
  Give the user a hint for how to continue in the case that git-am fails because it requires user intervention
2006-05-02 15:05:34 -07:00
Martin Langhoff
e923effb43 git-send-email: fix version string to be valid perl
This makes git-send-email easier to develop and debug, skipping the need
to `make git-send-email` every time.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-02 14:59:58 -07:00
Junio C Hamano
c9889e4085 Revert "fetch, pull: ask config for remote information"
This reverts 5a223a0d43 commit.
I asked Johannes to roll an updated version, so let's wait for it.
2006-05-02 14:16:46 -07:00
Johannes Schindelin
c1aee1fd8d repo-config: trim white-space before comment
Earlier, calling

	git-repo-config core.hello

on a .git/config like this:

	[core]
		hello = world ; a comment

would yield "world " (i.e. with a trailing space).

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-02 13:23:48 -07:00
Johannes Schindelin
cfa24e184a repo-config: fix segfault with no argument.
An earlier addition of --list feature was carelessly done and
caused an invalid access to argv[1] when it was not given.

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-02 12:54:12 -07:00
Robert Shearman
ced9456a27 Give the user a hint for how to continue in the case that git-am fails because it requires user intervention
Give the user a hint for how to continue in the case that git-am fails
because it requires user intervention.

Signed-off-by: Robert Shearman <rob@codeweaves.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-02 12:42:12 -07:00
Paul Mackerras
89b11d3ba5 gitk: Fix file list display when files are renamed
The conversion of the file list to use a text widget assumed incorrectly
that the list of files from git-diff-tree -r would correspond 1-1 with
the diff sections in the output of git-diff-tree -r -p -C, which is
not true when renames are detected.  This fixes it by keeping the
elements in the difffilestart list in the order they appear in the
file list window.

Since this means that the elements of difffilestart are no longer
necessarily in ascending order, it's somewhat hard to do the dynamic
highlighting in the file list as the diff window is scrolled, so I
have taken that out for now.

Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-05-02 19:55:31 +10:00
Johannes Schindelin
5a223a0d43 fetch, pull: ask config for remote information
Now you can say

[remote.junio]
	url = git://git.kernel.org/pub/scm/git/git.git
	pull = next:next

in your .git/config.

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-02 01:03:25 -07:00
Johannes Schindelin
97d4df0b29 builtin-push: also ask config for remote information
Now you can store your remote information in the config file like this:

[remote.upstream]
	url = me@company.com:the-project
	push = master:iceballs

[jc: fixed up to adjust a different fix for Push: lines earlier.]

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-02 01:03:02 -07:00
Junio C Hamano
54eb2d3ff9 builtin-push: make it official.
Remove the shell script version, and hardlink the git binary to it.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01 23:40:37 -07:00
Junio C Hamano
8ab99476ec builtin-diff: call it "git-diff", really.
Call it "git diff" not "git diffn", remove the shell script
version, and hardlink the git binary to it.

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

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-01 23:06:06 -07:00
Junio C Hamano
746437d534 Merge branch 'jc/xsha1-2'
* jc/xsha1-2:
  Extended SHA1 -- "rev^@" syntax to mean "all parents"
2006-05-01 22:55:40 -07:00
Junio C Hamano
cbd800ba79 Merge branch 'jc/pack' 2006-05-01 22:54:22 -07:00
Junio C Hamano
95a31cc5b3 Merge branch 'jc/pathcheck'
* jc/pathcheck:
  revision parsing: make "rev -- paths" checks stronger.
2006-05-01 22:51:27 -07:00
Junio C Hamano
50cbebf78d Merge branch 'nh/fetch-http'
* nh/fetch-http:
  git-fetch: resolve remote symrefs for HTTP transport
2006-05-01 22:42:01 -07:00
Junio C Hamano
dd097fcd4d Merge branch 'se/rebase'
* se/rebase:
  Add --continue and --abort options to git-rebase.
2006-05-01 22:39:57 -07:00
Paul Mackerras
da7c24dd9c gitk: Basic support for highlighting one view within another
With this, one view can be used as a highlight for another, so that
the commits that are in the highlight view are displayed in bold.
This required some fairly major changes to how the list of ids,
parents, children, and id to row mapping were stored for each view.
We can now be reading in several views at once; for all except the
current view, we just update the displayorder and the lists of parents
and children for the view.

This also creates a little bit of infrastructure for handling the
watch cursor.

Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-05-02 11:15:29 +10:00
Junio C Hamano
ea4a19e172 Extended SHA1 -- "rev^@" syntax to mean "all parents"
A short-hand "rev^@" is understood to be "all parents of the
named commit" with this patch.  So you can do

	git show v1.0.0^@

to view the parents of a merge commit,

	gitk ^v1.0.0^@ v1.0.4

to view the log between two revs (including the bottom one), and

	git diff --cc v1.1.0 v1.0.0^@

to inspect what got changed from the merge parents of v1.0.0 to v1.1.0.

This might be just my shiny new toy that is not very useful in
practice.  I needed it to do the multi-tree diff on Len's
infamous 12-way Octopus; typing "diff --cc funmerge funmerge^1
funmerge^2 funmerge^3 ..." was too painful.

[jc: taking suggestions from Linus and Johannes to match expectations
from shell users who are used to see $@ or $* either of which makes
sense.  I tend to write "$@" more often so...]

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-30 17:55:33 -07:00
Paul Mackerras
f8b28a4078 gitk: Add a tree-browsing mode
You can now select whether you want to see the patch for a commit
or the whole tree.  If you select the tree, gitk will now display
the commit message plus the contents of one file in the bottom-left
pane, when you click on the name of the file in the bottom-right pane.

Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-05-01 09:50:57 +10:00
Junio C Hamano
7aaf83dafb Fix builtin-push to honor Push: lines in remotes file.
[jc: originally from Johannes Schindelin, but reworked to lift a
 hard limit of Push: lines]

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-30 16:03:27 -07:00
Johannes Schindelin
5c477b9725 builtin-push: resurrect parsing of Push: lines
The C'ification of push left these behind.

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-30 15:42:09 -07:00
Linus Torvalds
755225de6c git builtin "push"
This adds a builtin "push" command, which is largely just a C'ification of
the "git-push.sh" script.

Now, the reason I did it as a built-in is partly because it's yet another
step on relying less on shell, but it's actually mostly because I've
wanted to be able to push to _multiple_ repositories, and the most obvious
and simplest interface for that would seem be to just have a "remotes"
file that has multiple URL entries.

(For "pull", having multiple entries should either just select the first
one, or you could fall back on the others on failure - your choice).

And quite frankly, it just became too damn messy to do that in shell.
Besides, we actually have a fair amount of infrastructure in C, so it just
wasn't that hard to do.

Of course, this is almost totally untested. It probably doesn't work for
anything but the one trial I threw at it. "Simple" doesn't necessarily
mean "obviously correct".

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-30 00:59:18 -07:00
Junio C Hamano
66ae0c7702 Merge branch 'fix'
* fix:
  git-format-patch: Use rfc2822 compliant date.
2006-04-30 00:59:10 -07:00
Huw Davies
262a6ef76a git-format-patch: Use rfc2822 compliant date.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-30 00:32:25 -07:00
Junio C Hamano
334b506a34 builtin-diff.c: die() formatting type fix.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-30 00:26:41 -07:00
Junio C Hamano
0fe7c1de16 built-in diff: assorted updates.
"git diff(n)" without --base, --ours, etc. defaults to --cc,
which usually is the same as -p unless you are in the middle of
a conflicted merge, just like the shell script version.

"git diff(n) blobA blobB path" complains and dies.

"git diff(n) tree0 tree1 tree2...treeN" does combined diff that
shows a merge of tree1..treeN to result in tree0.

Giving "-c" option to any command that defaults to "--cc" turns
off dense-combined flag.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-29 01:32:53 -07:00
Junio C Hamano
65056021f2 built-in diff.
This starts to replace the shell script version of "git diff".

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-04-28 23:20:52 -07:00
Junio C Hamano
89719209f4 Merge branch 'fix'
* fix:
  Fix trivial typo in git-log man page.
  Properly render asciidoc "callouts" in git man pages.
  Fix up remaining man pages that use asciidoc "callouts".
  Update the git-branch man page to include the "-r" option,
  annotate: display usage information if no filename was given
  annotate: fix warning about uninitialized scalar
  git-am --resolved: more usable error message.
2006-04-28 16:57:32 -07:00