summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-05-08Increase pack.depth default to 50Libravatar Theodore Ts'o4-4/+4
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-08Add pack.depth option to git-pack-objects.Libravatar Theodore Ts'o4-3/+11
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-08Use .git/MERGE_MSG in cherry-pick/revertLibravatar Shawn O. Pearce1-11/+6
Rather than storing the temporary commit message data in .msg (in the working tree) we now store the message data in .git/MERGE_MSG. By storing the message in the .git/ directory we are sure we will never have a collision with a user file, should a project actually have a ".msg" file in their top level tree. We also don't need to worry about leaving this stale file behind during a `reset --hard` and have it show up in the output of status. We are using .git/MERGE_MSG here to store the temporary message as it is an already established convention between git-merge, git-am and git-rebase that git-commit will default the user's edit buffer to the contents of .git/MERGE_MSG. If the user is going to need to resolve this commit or wants to edit the message on their own prepping that file with the desired message "just works". Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-08Merge branch 'maint'Libravatar Junio C Hamano4-10/+42
* maint: GIT v1.5.1.4 Add howto files to rpm packages. wcwidth redeclaration user-manual: fix clone and fetch typos
2007-05-08GIT v1.5.1.4Libravatar Junio C Hamano3-2/+32
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-08Add howto files to rpm packages.Libravatar Quy Tonthat1-1/+4
RPM packages did not include howto files which causes broken links in howto-index.html Signed-off-by: Quy Tonthat <qtonthat@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07wcwidth redeclarationLibravatar Amos Waterland1-2/+2
Build fails for git 1.5.1.3 on AIX, with the message: utf8.c:66: error: conflicting types for 'wcwidth' /.../lib/gcc/powerpc-ibm-aix5.3.0.0/4.0.3/include/string.h:266: error: previous declaration of 'wcwidth' was here Fix this by renaming our static variant to our own name. Signed-off-by: Amos Waterland <apw@us.ibm.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07user-manual: fix clone and fetch typosLibravatar J. Bruce Fields1-7/+6
More typo fixes from Santi Béjar, plus a couple other mistakes I noticed along the way. Cc: Santi Béjar <sbejar@gmail.com> Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07Remove duplicate exports from MakefileLibravatar Shawn O. Pearce1-1/+1
We already export these variables earlier in the Makefile, right after they were 'declared'. There is no point in doing so again. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07Merge branch 'master' of git://repo.or.cz/git-guiLibravatar Shawn O. Pearce18-4020/+4008
* 'master' of git://repo.or.cz/git-gui: git-gui: Use vi-like keys in merge dialog git-gui: Include commit id/subject in merge choices git-gui: Show all possible branches for merge git-gui: Move merge support into a namespace git-gui: Allow vi keys to scroll the diff/blame regions git-gui: Move console procs into their own namespace git-gui: Refactor into multiple files to save my sanity git-gui: Track our own embedded values and rebuild when they change git-gui: Refactor to use our git proc more often git-gui: Use option database defaults to set the font git-gui: Cleanup common font handling for font_ui git-gui: Correct line wrapping for too many branch message git-gui: Warn users before making an octopus merge git-gui: Include the subject in the status bar after commit Also perform an evil merge change to update Git's main Makefile to pass the proper options down into git-gui now that it depends on reasonable values for 'sharedir' and 'TCL_PATH'. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07git-gui: Use vi-like keys in merge dialogLibravatar Shawn O. Pearce1-6/+14
Since we support vi-like keys for scrolling in other UI contexts we can easily do so here too. Tk's handy little `event generate' makes this a lot easier than I thought it would be. We may want to go back and fix some of the other vi-like bindings to redirect to the arrow and pageup/pagedown keys, rather than running the view changes directly. I've bound 'v' to visualize, as this is a somewhat common thing to want to do in the merge dialog. Control (or Command) Return is also bound to start the merge, much as it is bound in the main window to activate the commit. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07git-gui: Include commit id/subject in merge choicesLibravatar Shawn O. Pearce1-45/+54
When merging branches using our local merge feature it can be handy to know the first few digits of the commit the ref points at as well as the short description of the branch name. Unfortunately I'm unable to use three listboxes in a row, as Tcl freaks out and refuses to let me have a selection in more than one of them at any given point in time. So instead we use a fixed width font in the existing listbox and organize the data into three columns. Not nearly as nice looking, but users can continue to use the listbox's features. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07git-gui: Show all possible branches for mergeLibravatar Shawn O. Pearce1-7/+13
Johannes Sixt pointed out that git-gui was randomly selecting which branch (or tag!) it will show in the merge dialog when more than one ref points at the same commit. This can be a problem for the user if they want to merge a branch, but the ref that git-gui selected to display was actually a tag that points at the commit at the tip of that branch. Since the user is looking for the branch, and not the tag, its confusing to not find it, and worse, merging the tag causes git-merge to generate a different message than if the branch was selected. While I am in here and am messing around I have changed the for-each-ref usage to take advantage of its --tcl formatting, and to fetch the subject line of the commit (or tag) we are looking at. This way we could present the subject line in the UI to the user, given them an even better chance to select the correct branch. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07git-gui: Move merge support into a namespaceLibravatar Shawn O. Pearce2-16/+21
Like the console procs I have moved the code related to merge support into their own namespace, so that they are isolated from the rest of the world. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07git-gui: Allow vi keys to scroll the diff/blame regionsLibravatar Shawn O. Pearce2-0/+23
Users who are used to vi and recent versions of gitk may want to scroll the diff region using vi style keybindings. Since these aren't bound to anything else and that widget does not accept focus for data input, we can easily support that too. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07git-gui: Move console procs into their own namespaceLibravatar Shawn O. Pearce4-39/+57
To help modularize git-gui better I'm isolating the code and variables required to handle our little console windows into their own namespace. This way we can say console::new rather than new_console, and the hidden internal procs to create the window and read data from our filehandle are off in their own private little land, where most users don't see them. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07git-gui: Refactor into multiple files to save my sanityLibravatar Shawn O. Pearce17-3792/+3836
I'm finding it difficult to work with a 6,000+ line Tcl script and not go insane while looking for a particular block of code. Since most of the program is organized into different units of functionality and not all users will need all units immediately on startup we can improve things by splitting procs out into multiple files and let auto_load handle things for us. This should help not only to better organize the source, but it may also improve startup times for some users as the Tcl parser does not need to read as much script before it can show the UI. In many cases the user can avoid reading at least half of git-gui now. Unfortunately we now need a library directory in our runtime location. This is currently assumed to be $(sharedir)/git-gui/lib and its expected that the Makefile invoker will setup some sort of reasonable sharedir value for us, or let us assume its going to be $(gitexecdir)/../share. We now also require a tclsh (in TCL_PATH) to just run the Makefile, as we use tclsh to generate the tclIndex for our lib directory. I'm hoping this is not an unncessary burden on end-users who are building from source. I haven't really made any functionality changes here, this is just a huge migration of code from one file to many smaller files. All of the new changes are to setup the library path and install the library files. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-07Use GIT_OBJECT_DIR for temporary files of pack-objectsLibravatar Alex Riesen1-6/+8
Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07Fix minor documentation errorsLibravatar Michael Spang2-3/+3
- git-ls-files.txt: typo in description of --ignored - git-clean.txt: s/forceRequire/requireForce/ Signed-off-by: Michael Spang <mspang@uwaterloo.ca> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07t7300: Basic tests for git-cleanLibravatar Michael Spang1-0/+180
This tests the -d, -n, -f, -x, and -X options to git-clean. Signed-off-by: Michael Spang <mspang@uwaterloo.ca> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07dir.c: Omit non-excluded directories with dir->show_ignoredLibravatar Michael Spang1-1/+6
This makes "git-ls-files --others --directory --ignored" behave as documented and consequently also fixes "git-clean -d -X". Previously, git-clean would remove non-excluded directories even when using the -X option. Signed-off-by: Michael Spang <mspang@uwaterloo.ca> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07Merge branch 'master' of git://repo.or.cz/git-guiLibravatar Junio C Hamano1-20/+26
* 'master' of git://repo.or.cz/git-gui: git-gui: Correctly handle UTF-8 encoded commit messages
2007-05-07Merge branch 'maint'Libravatar Junio C Hamano5-81/+205
* maint: Documentation: don't reference non-existent 'git-cvsapplycommit' user-manual: stop deprecating the manual user-manual: miscellaneous editing user-manual: fix .gitconfig editing examples user-manual: clean up fast-forward and dangling-objects sections user-manual: add section ID's user-manual: more discussion of detached heads, fix typos git-gui: Allow spaces in path to 'wish' gitk: Allow user to choose whether to see the diff, old file, or new file
2007-05-07Merge branch 'maint' of git://repo.or.cz/git-gui into maintLibravatar Junio C Hamano1-1/+1
* 'maint' of git://repo.or.cz/git-gui: git-gui: Allow spaces in path to 'wish'
2007-05-07Merge git://git2.kernel.org/pub/scm/gitk/gitk into maintLibravatar Junio C Hamano1-0/+17
* git://git2.kernel.org/pub/scm/gitk/gitk: gitk: Allow user to choose whether to see the diff, old file, or new file
2007-05-07Added a reference to git-add in the documentation for git-update-indexLibravatar Matthieu Moy1-1/+5
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07Document git add -u introduced earlier.Libravatar Matthieu Moy1-1/+5
This command was implemented, but not documented in dfdac5d9b877641d3aad8ec49f64c2730a3487e3. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-06Documentation: don't reference non-existent 'git-cvsapplycommit'Libravatar Jeff King1-1/+1
Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-07user-manual: stop deprecating the manualLibravatar J. Bruce Fields1-4/+3
It's just as much a work-in-progress, but at least now it's gotten enough technical review to shake out most of the really bad lies, so hopefully it doesn't do any actual damage. And if we encourage people to read it, they'll be more likely to whine about it, which will help get it fixed faster. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-07user-manual: miscellaneous editingLibravatar J. Bruce Fields1-35/+47
I cherry-picked some additional miscellaneous fixes from those suggested by Santi Béjar, including fixes to: - correct discussion of repository/HEAD->repository shortcut - add mention of git-mergetool - add mention of --track - mention "-f" as well as "+" for fetch Cc: Santi Béjar <sbejar@gmail.com> Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-07user-manual: fix .gitconfig editing examplesLibravatar J. Bruce Fields1-4/+3
Santi Béjar points out that when telling people how to "introduce themselves" to git we're advising them to replace their entire .gitconfig file. Fix that. Cc: "Santi Béjar <sbejar@gmail.com> Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-07user-manual: clean up fast-forward and dangling-objects sectionsLibravatar J. Bruce Fields1-33/+40
The previous commit calls attention to the fact that we have two sections each devoted to fast-forwards and to dangling objects. Revise and attempt to differentiate them a bit. Some more reorganization may be required later.... Signed-off-by: J. Bruce Fields
2007-05-07user-manual: add section ID'sLibravatar J. Bruce Fields1-2/+82
Any section lacking an id gets an annoying warning when you build the manual. More seriously, the table of contents then generates volatile id's which change with every build, with the effect that we get URL's that change all the time. The ID's are manually generated and sometimes inconsistent, but that's OK. XXX: what to do about the preface? Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-05-07user-manual: more discussion of detached heads, fix typosLibravatar J. Bruce Fields1-5/+15
Nicolas Pitre pointed out a couple typos and some room for improvement in the discussion of detached heads. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu> Cc: Nicolas Pitre <nico@cam.org>
2007-05-06GIT v1.5.2-rc2Libravatar Junio C Hamano2-2/+2
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-06Merge branch 'maint'Libravatar Junio C Hamano10-58/+253
* maint: Small correction in reading of commit headers Documentation: fix typo in git-remote.txt Add test for blame corner cases. blame: -C -C -C blame: Notice a wholesale incorporation of an existing file. Fix --boundary output diff format documentation: describe raw combined diff format Mention version 1.5.1 in tutorial and user-manual Add --no-rebase option to git-svn dcommit Fix markup in git-svn man page
2007-05-06Handle return code of parse_commit in revision machineryLibravatar Alex Riesen2-24/+51
This fixes a crash in broken repositories where random commits suddenly disappear. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Small correction in reading of commit headersLibravatar Alex Riesen1-1/+3
Check if a line of the header has enough characters to possibly contain the requested prefix. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Documentation: fix typo in git-remote.txtLibravatar James Bowes1-1/+1
Signed-off-by: James Bowes <jbowes@dangerouslyinc.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Add test for blame corner cases.Libravatar Junio C Hamano1-0/+132
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05blame: -C -C -CLibravatar Junio C Hamano1-2/+13
When you do this, existing "blame -C -C" would not find that the latter half of the file2 came from the existing file1: ... both file1 and file2 are tracked ... $ cat file1 >>file2 $ git add file1 file2 $ git commit This is because we avoid the expensive find-copies-harder code that makes unchanged file (in this case, file1) as a candidate for copy & paste source when annotating an existing file (file2). The third -C now allows it. However, this obviously makes the process very expensive. We've actually seen this patch before, but I dismissed it because it covers such a narrow (and arguably stupid) corner case. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05blame: Notice a wholesale incorporation of an existing file.Libravatar Junio C Hamano1-12/+40
The -C option to blame tries to find a section of a preimage file by running diff against the lines whose origin is still unknown, and excluding the different parts. The code however did not cover the case where the tail part of the section matched, which we handle for the normal non-move/copy codepath. This breakage was most visible when preimage file matches in its entirety and failed to pass blame in such a case. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-05Fix --boundary outputLibravatar Linus Torvalds1-4/+4
"git log --boundary" incorrectly honoured the option only when "left-right" was enabled. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04diff format documentation: describe raw combined diff formatLibravatar Jakub Narebski1-0/+22
Add description of raw combined diff format to diff-formats.txt, as "diff format for merges" section, before "Generating patches..." section. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04Mention version 1.5.1 in tutorial and user-manualLibravatar Carl Worth2-4/+4
Most other documentation will frequently be read from an installation of git so will naturally be associated with the installed version. But these two documents in particular are often read from web pages while users are still exploring git. It's important to mention version 1.5.1 since these documents provide example commands that won't work with previous versions of git. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04Add --no-rebase option to git-svn dcommitLibravatar Karl Hasselström2-15/+21
git-svn dcommit exports commits to Subversion, then imports them back to git again, and last but not least rebases or resets HEAD to the last of the new commits. I guess this rebasing is convenient when using just git, but when the commits to be exported are managed by StGIT, it's really annoying. So add an option to disable this behavior. And document it, too! Signed-off-by: Karl Hasselström <kha@treskal.com> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-04Fix markup in git-svn man pageLibravatar Karl Hasselström1-19/+13
Some of the existing markup was just plain broken, and some subcommand options weren't indented properly. Signed-off-by: Karl Hasselström <kha@treskal.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03git-tag(1): -v option is a subcommand; fix code blockLibravatar Jonas Fonseca1-1/+4
When the -v is passed, git-tag will exit after it is processed like it does with the -d and -l options. Additionally, missing code block caused wrong rendering of an option example. Signed-off-by: Jonas Fonseca <fonseca@diku.dk> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Improve request-pull to handle non-rebased branchesLibravatar Shawn O. Pearce1-9/+32
This is actually a few different changes to request-pull, making it slightly smarter: 1) Minor cleanup of revision->base variable names, making it follow the head/headrev naming convention that is already in use. 2) Compute the merge-base between the two revisions upfront and reuse that selected merge-base to create the diffstat. 3) Refuse to generate a pull request for branches that have no existing relationship. These aren't very common and would mess up our diffstat generation. 4) Disable the PAGER when running shortlog and diff, as these would otherwise activate the pager for each command when git-request-pull is run on a tty. Instead users can get the entire output paged (if desired) using `git -p request-pull`. 5) Use shortlog rather than `git log | git shortlog` now that recent shortlog versions are able to run the revision listing internally. 6) Attempt to resolve the input URL using the user's configured remotes. This is useful if the URL you want the recipient to see is also the one you used to push your changes. If not a config-file remote could easily be setup for the public URL and request-pull could be passed that name instead. 7) Automatically guess and include the remote branch name in the body of the message. We list the branch name immediately after the URL, making it easy for the recipient to copy and paste the entire line onto a `git pull` command line. Rumor has it Linus likes this format, for exactly that reason. If multiple branches at the remote match $headrev we take the first one returned by peek-remote and assume it is suitable. If no branches are available we warn the user about the problem, but insert a static string that is not a valid branch name and would be obvious to anyone reading the message as being totally incorrect. This allows users to still generate a template message without network access (for example) and hand-correct the bits that cannot be verified. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-05-03Merge branch 'maint'Libravatar Junio C Hamano9-35/+35
* maint: gitweb: use decode_utf8 directly posix compatibility for t4200 Document 'opendiff' value in config.txt and git-mergetool.txt Allow PERL_PATH="/usr/bin/env perl" Make xstrndup common diff.c: fix "size cache" handling. http-fetch: Disable use of curl multi support for libcurl < 7.16.