summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2006-12-26show-branch --reflog: add documentation.Libravatar Junio C Hamano1-0/+5
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25add .mailmap for git-shortlog output with the git repositoryLibravatar Nicolas Pitre1-0/+37
The git repository itself was messed up in a couple cases. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25GIT v1.5.0 previewLibravatar Junio C Hamano1-1/+1
This is not yet -rc1 where all new topics closes, but I think it is getting pretty closer. I'd still want to merge updates to fsck/prune to honor reflog entries before -rc1. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25Merge branch 'jc/bm'Libravatar Junio C Hamano1-2/+6
* jc/bm: Allow branch.*.merge to talk about remote tracking branches.
2006-12-25Merge branch 'rf/web'Libravatar Junio C Hamano1-96/+107
* rf/web: gitweb: Use rev-list --skip option. gitweb: Change history action to use parse_commits. gitweb: Change atom, rss actions to use parse_commits. gitweb: Change header search action to use parse_commits. gitweb: Change log action to use parse_commits. gitweb: Change summary, shortlog actions to use parse_commits. gitweb: We do longer need the --parents flag in rev-list. gitweb: Add parse_commits, used to bulk load commit objects.
2006-12-25git-add -f: allow adding otherwise ignored files.Libravatar Junio C Hamano2-7/+35
Instead of just warning, refuse to add otherwise ignored files by default, and allow it with an -f option. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25gitweb: Use rev-list --skip option.Libravatar Robert Fitzsimons1-23/+1
Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25gitweb: Change history action to use parse_commits.Libravatar Robert Fitzsimons1-18/+9
Also added missing accesskey. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25gitweb: Change atom, rss actions to use parse_commits.Libravatar Robert Fitzsimons1-11/+7
Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25gitweb: Change header search action to use parse_commits.Libravatar Robert Fitzsimons1-14/+9
Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25gitweb: Change log action to use parse_commits.Libravatar Robert Fitzsimons1-11/+14
Also add missing next link to bottom of page. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25gitweb: Change summary, shortlog actions to use parse_commits.Libravatar Robert Fitzsimons1-22/+12
Also added missing accesskey. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25gitweb: We do longer need the --parents flag in rev-list.Libravatar Robert Fitzsimons1-5/+6
We only want to know the direct parents of a given commit object, these parents are available in the --header output of rev-list. If --parents is supplied with --full-history the output includes merge commits that aren't relevant. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25gitweb: Add parse_commits, used to bulk load commit objects.Libravatar Robert Fitzsimons1-17/+74
Add a new method parse_commits which is able to parse multiple commit objects at once. Reworked parse_commit to share the commit object parsing logic. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25git-add: warn when adding an ignored file with an explicit request.Libravatar Junio C Hamano1-0/+3
We allow otherwise ignored paths to be added to the index by spelling its path out on the command line, but we would warn the user about them when we do so. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25git-add: add ignored files when asked explicitly.Libravatar Junio C Hamano2-4/+18
One thing many people found confusing about git-add was that a file whose name matches an ignored pattern could not be added to the index. With this, such a file can be added by explicitly spelling its name to git-add. Fileglobs and recursive behaviour do not add ignored files to the index. That is, if a pattern '*.o' is in .gitignore, and two files foo.o, bar/baz.o are in the working tree: $ git add foo.o $ git add '*.o' $ git add bar Only the first form adds foo.o to the index. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25read_directory: show_both option.Libravatar Junio C Hamano2-9/+16
This teaches the internal read_directory() routine to return both interesting and ignored pathnames. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25git-rm: DocumentationLibravatar Junio C Hamano1-24/+27
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25t3600: update the test for updated git rmLibravatar Junio C Hamano1-4/+74
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25git-rm: update to saner semanticsLibravatar Junio C Hamano1-20/+103
This updates the "git rm" command with saner semantics suggested on the list earlier with: Message-ID: <Pine.LNX.4.64.0612020919400.3476@woody.osdl.org> Message-ID: <Pine.LNX.4.64.0612040737120.3476@woody.osdl.org> The command still validates that the given paths all talk about sensible paths to avoid mistakes (e.g. "git rm fiel" when file "fiel" does not exist would error out -- user meant to remove "file"), and it has further safety checks described next. The biggest difference is that the paths are removed from both index and from the working tree (if you have an exotic need to remove paths only from the index, you can use the --cached option). The command refuses to remove if the copy on the working tree does not match the index, or if the index and the HEAD does not match. You can defeat this check with -f option. This safety check has two exceptions: if the working tree file does not exist to begin with, that technically does not match the index but it is allowed. This is to allow this CVS style command sequence: rm <path> && git rm <path> Also if the index is unmerged at the <path>, you can use "git rm <path>" to declare that the result of the merge loses that path, and the above safety check does not trigger; requiring the file to match the index in this case forces the user to do "git update-index file && git rm file", which is just crazy. To recursively remove all contents from a directory, you need to pass -r option, not just the directory name as the <path>. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25match_pathspec() -- return how well the spec matchedLibravatar Junio C Hamano2-16/+39
This updates the return value from match_pathspec() so that the caller can tell cases between exact match, leading pathname match (i.e. file "foo/bar" matches a pathspec "foo"), or filename glob match. This can be used to prevent "rm dir" from removing "dir/file" without explicitly asking for recursive behaviour with -r flag, for example. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-25Merge branch 'jc/skip-count'Libravatar Junio C Hamano4-14/+89
* jc/skip-count: revision: --skip=<n>
2006-12-25Merge branch 'jc/git-add--interactive'Libravatar Junio C Hamano5-2/+940
* jc/git-add--interactive: git-add --interactive: add documentation git-add --interactive: hunk splitting git-add --interactive
2006-12-25git-add --interactive: add documentationLibravatar Junio C Hamano2-2/+119
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-24Allow branch.*.merge to talk about remote tracking branches.Libravatar Junio C Hamano1-2/+6
People often get confused if the value of branch.*.merge should be the remote branch name they are fetching from, or the tracking branch they locally have. So this allows either. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-24Merge branch 'sb/merge-friendly'Libravatar Junio C Hamano3-6/+23
* sb/merge-friendly: Display 'theirs' branch name when possible in merge. Use extended SHA1 syntax in merge-recursive conflicts.
2006-12-24Merge branch 'js/rerere'Libravatar Junio C Hamano8-19/+585
* js/rerere: Make git-rerere a builtin Add a test for git-rerere move read_mmfile() into xdiff-interface
2006-12-24commit-tree: encourage UTF-8 commit messages.Libravatar Johannes Schindelin4-4/+303
Introduce is_utf() to check if a text looks like it is encoded in UTF-8, utf8_width() to count display width, and implements print_wrapped_text() using them. git-commit-tree warns if the commit message does not minimally conform to the UTF-8 encoding when i18n.commitencoding is either unset, or set to "utf-8". Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-24Switch git_mmap to use pread.Libravatar Shawn O. Pearce1-14/+5
Now that Git depends on pread in index-pack its safe to say we can also depend on it within the git_mmap emulation we activate when NO_MMAP is set. On most systems pread should be slightly faster than an lseek/read/lseek sequence as its one system call vs. three system calls. We also now honor EAGAIN and EINTR error codes from pread and restart the prior read. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-24Rename gitfakemmap to git_mmap.Libravatar Shawn O. Pearce2-7/+7
This minor cleanup was suggested by Johannes Schindelin. The mmap is still fake in the sense that we don't support PROT_WRITE or MAP_SHARED with external modification at all, but that hasn't stopped us from using mmap() thoughout the Git code. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-23gitweb: Paginate commit/author/committer search outputLibravatar Robert Fitzsimons1-45/+103
Paginate commit/author/committer search output to only show 100 commits at a time, added appropriate nav links. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-23Makefile: add quick-install-doc for installing pre-built manpagesLibravatar Eric Wong3-0/+37
This adds and uses the install-doc-quick.sh file to Documentation/, which is usable for people who track either the 'html' or 'man' heads in Junio's repository (prefixed with 'origin/' if cloned locally). You may override this by specifying DOC_REF in the make environment or in config.mak. GZ may also be set in the environment (or config.mak) if you wish to gzip the documentation after installing it. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-23Display 'theirs' branch name when possible in merge.Libravatar Shawn O. Pearce3-4/+21
Displaying the SHA1 of 'their' branch (the branch being merged into the current branch) is not nearly as friendly as just displaying the name of that branch, especially if that branch is already local to this repository. git-merge now sets the environment variable 'GITHEAD_%(sha1)=%(name)' for each argument it gets passed, making the actual input name that resolved to the commit '%(sha1)' easily available to the invoked merge strategy. git-merge-recursive makes use of these environment variables when they are available by using '%(name)' whenever it outputs the commit identification rather than '%(sha1)'. This is most obvious in the conflict hunks created by xdl_merge: $ git mege sideb~1 <<<<<<< HEAD:INSTALL Good! ======= Oops. >>>>>>> sideb~1:INSTALL [jc: adjusted a test script and a minor constness glitch.] Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-23Use extended SHA1 syntax in merge-recursive conflicts.Libravatar Shawn O. Pearce1-2/+2
When we get a line-level conflict in merge-recursive and print out the two sides in the conflict hunk header and footer we should use the standard extended SHA1 syntax to specify the specific blob, as this allows the user to copy and paste the line right into 'git show' to view the complete version. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22gitweb: Allow search to be disabled from the config file.Libravatar Robert Fitzsimons1-0/+13
Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22gitweb: Require a minimum of two character for the search text.Libravatar Robert Fitzsimons1-0/+3
Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22gitweb: Use rev-list pattern search options.Libravatar Robert Fitzsimons1-10/+10
Use rev-list pattern search options instead of hand coded perl. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22checkout: make the message about the need for a new branch a bit clearerLibravatar Nicolas Pitre1-2/+5
Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22gitweb: optimize git_summary.Libravatar Robert Fitzsimons1-3/+3
We don't need to call git_get_head_hash at all just pass in "HEAD" and use the return id field. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22gitweb: optimize git_shortlog_body.Libravatar Robert Fitzsimons1-1/+3
Don't call gitweb_have_snapshot from within the loop. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22gitweb: optimize git_get_last_activity.Libravatar Robert Fitzsimons1-1/+2
Only return one line of output and we don't need the refname value. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22gitweb: Add missing show '...' links change.Libravatar Robert Fitzsimons1-0/+1
Part of the patch for "gitweb: Show '...' links in "summary" view only if there are more items" (313ce8cee665447e4476d7e8985b270346a8e5a1) is missing. Add it back in. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22Make git-show-branch options similar to git-branch.Libravatar Brian Gernhardt2-18/+32
Branch has "-r" for remote branches and "-a" for local and remote. It seems logical to mirror that in show-branch. Also removes the dubiously useful "--tags" option (as part of changing the meaning for "--all"). Signed-off-by: Brian Gernhardt <benji@silverinsanity.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22Keep "git --git-dir" from causing a bus error.Libravatar Brian Gernhardt1-2/+4
The option checking code for --git-dir had an off by 1 error that would cause it to access uninitialized memory if it was the last argument. This causes it to display an error and display the usage string instead. Signed-off-by: Brian Gernhardt <benji@silverinsanity.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22git-svn: enable common fetch/commit options for dcommitLibravatar Eric Wong1-1/+1
dcommit does commits and fetches, so all options used for those should work, too, including --authors-file. Reported missing by Nicolas Vilz. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22vc-git: Ignore errors caused by a non-existent directory in vc-git-registered.Libravatar Alexandre Julliard1-2/+3
Signed-off-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22Remove NO_ACCURATE_DIFF options from build systemsLibravatar Eric Wong2-9/+0
The code no longer uses it, as we have --inaccurate-eof in git-apply. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22git-tag: lose exit after dieLibravatar Junio C Hamano1-2/+0
We are not running under /bin/resurrection shell ;-) Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22Really fix headers for __FreeBSD__Libravatar Junio C Hamano1-1/+1
The symbol to detect FreeBSD is __FreeBSD__, not __FreeBSD. Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-12-22Do not support "partial URL shorthand" anymore.Libravatar Junio C Hamano1-27/+7
We used to support specifying the top part of remote URL in remotes and use that as a short-hand for the URL. $ cat .git/remotes/jgarzik URL: git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/ $ git pull jgarzik/misc-2.6 This is confusing when somebody attempts to do this: $ git pull origin/foo which is not syntactically correct (unless you have origin/foo.git repository) and should fail, but it resulted in a mysterious access to the 'foo' subdirectory of the origin repository. Which was what it was designed to do, but because this is an oddball "feature" I suspect nobody uses, let's remove it. Signed-off-by: Junio C Hamano <junkio@cox.net>