aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Merge branch 'maint'Junio C Hamano2008-11-26
|\ | | | | | | | | * maint: Teach "git diff" to honour --[no-]ext-diff
| * Merge branch 'mm/maint-sort-config-doc' into maintJunio C Hamano2008-11-26
| |\ | | | | | | | | | | | | * mm/maint-sort-config-doc: config.txt: alphabetize configuration sections
| * | Teach "git diff" to honour --[no-]ext-diffJunio C Hamano2008-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original intention of 72909be (Add diff-option --ext-diff, 2007-06-30) was to optionally allow the use of external diff viewer in "git log" family (while keeping them disabled by default). It exposed the "allow external diff" bit to the UI, but forgot to adjust the "git diff" codepath that was set up to always allow use of the external diff viewer. Noticed by Nazri Ramliy; tests by René Scharfe squashed in. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'mm/sort-config-doc'Junio C Hamano2008-11-26
|\ \ \ | | | | | | | | | | | | | | | | * mm/sort-config-doc: config.txt: alphabetize configuration sections
| * \ \ Merge branch 'mm/maint-sort-config-doc' into mm/sort-config-docJunio C Hamano2008-11-26
| |\ \ \ | | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | * mm/maint-sort-config-doc: config.txt: alphabetize configuration sections Conflicts: Documentation/config.txt
| | * | config.txt: alphabetize configuration sectionsMatt McCutchen2008-11-26
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | I figured the sections might as well be in some order, so I chose alphabetical but with "core" at the beginning. This should help people add new variables in the right places. Signed-off-by: Matt McCutchen <matt@mattmccutchen.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | xdiff-interface.c: remove 10 duplicated linesJim Meyering2008-11-26
| | | | | | | | | | | | | | | | | | | | | Remove an accidentally duplicated sequence of 10 lines. This happens to plug a leak, too. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | t9129-git-svn-i18n-commitencoding: Make compare_svn_head_with() compatible ↵Marcel Koeppen2008-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with OSX sed The sed call used in compare_svn_head_with() uses the + quantifier, which is not supported in the OSX version of sed. It is replaced by the equivalent \{1,\}. Signed-off-by: Marcel Koeppen <git-dev@marzelpan.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | send-email: Fix Pine address book parsingTrent Piepho2008-11-26
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | See: http://www.washington.edu/pine/tech-notes/low-level.html Entries with a fcc or comment field after the address weren't parsed correctly. Continuation lines, identified by leading spaces, were also not handled. Distribution lists which had ( ) around a list of addresses did not have the parenthesis removed. Signed-off-by: Trent Piepho <tpiepho@freescale.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'for-junio' of git://source.winehq.org/~julliard/git/gitJunio C Hamano2008-11-25
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-junio' of git://source.winehq.org/~julliard/git/git: git.el: Allow to commit even if there are no marked files. git.el: Add possibility to mark files directly in git-update-status-files. git.el: Add an insert file command. git.el: Never clear the status buffer, only update the files. git.el: Fix git-amend-commit to support amending an initial commit. git.el: Properly handle merge commits in git-amend-commit. git.el: Simplify handling of merge heads in the commit log-edit buffer. git.el: Remove the env parameter in git-call-process and git-call-process-string. git.el: Improve error handling for commits.
| * | git.el: Allow to commit even if there are no marked files.Alexandre Julliard2008-11-23
| | | | | | | | | | | | | | | | | | | | | This can be useful to commit a merge that didn't result in any changes. Signed-off-by: Alexandre Julliard <julliard@winehq.org>
| * | git.el: Add possibility to mark files directly in git-update-status-files.Alexandre Julliard2008-11-23
| | | | | | | | | | | | | | | | | | | | | This avoids the need to go through the list twice, which helps performance on large file lists. Signed-off-by: Alexandre Julliard <julliard@winehq.org>
| * | git.el: Add an insert file command.Alexandre Julliard2008-11-23
| | | | | | | | | | | | | | | | | | | | | This allows to insert a file in the buffer no matter what its state is, making it possible for instance to remove an up-to-date file. Signed-off-by: Alexandre Julliard <julliard@winehq.org>
| * | git.el: Never clear the status buffer, only update the files.Alexandre Julliard2008-11-21
| | | | | | | | | | | | | | | | | | This makes it unnecessary to save/restore the file marks. Signed-off-by: Alexandre Julliard <julliard@winehq.org>
| * | git.el: Fix git-amend-commit to support amending an initial commit.Alexandre Julliard2008-11-21
| | | | | | | | | | | | Signed-off-by: Alexandre Julliard <julliard@winehq.org>
| * | git.el: Properly handle merge commits in git-amend-commit.Alexandre Julliard2008-11-21
| | | | | | | | | | | | Signed-off-by: Alexandre Julliard <julliard@winehq.org>
| * | git.el: Simplify handling of merge heads in the commit log-edit buffer.Alexandre Julliard2008-11-21
| | | | | | | | | | | | | | | | | | | | | | | | Use a single Merge: header instead of one Parent: header for each parent, and don't list the current HEAD as a merged head. Support symbolic references too. Signed-off-by: Alexandre Julliard <julliard@winehq.org>
| * | git.el: Remove the env parameter in git-call-process and ↵Alexandre Julliard2008-11-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | git-call-process-string. All callers that need to change the environment now set process-environment themselves. Signed-off-by: Alexandre Julliard <julliard@winehq.org>
| * | git.el: Improve error handling for commits.Alexandre Julliard2008-11-21
| | | | | | | | | | | | | | | | | | | | | Display all errors happening in the various subcommands of the commit sequence, and abort on any error. Signed-off-by: Alexandre Julliard <julliard@winehq.org>
* | | Merge branch 'maint'Junio C Hamano2008-11-23
|\ \ \ | | |/ | |/| | | | | | | * maint: Fix misleading wording for git-cherry-pick
| * | Fix misleading wording for git-cherry-pickBryan Drewery2008-11-23
| | | | | | | | | | | | | | | | | | | | | | | | Documentation for -n implies that -x is normally used, however this is no longer true. Signed-off-by: Bryan Drewery <bryan@shatow.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | sha1_file: avoid bogus "file exists" error messageJoey Hess2008-11-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids the following misleading error message: error: unable to create temporary sha1 filename ./objects/15: File exists mkstemp can fail for many reasons, one of which, ENOENT, can occur if the directory for the temp file doesn't exist. create_tmpfile tried to handle this case by always trying to mkdir the directory, even if it already existed. This caused errno to be clobbered, so one cannot tell why mkstemp really failed, and it truncated the buffer to just the directory name, resulting in the strange error message shown above. Note that in both occasions that I've seen this failure, it has not been due to a missing directory, or bad permissions, but some other, unknown mkstemp failure mode that did not occur when I ran git again. This code could perhaps be made more robust by retrying mkstemp, in case it was a transient failure. Signed-off-by: Joey Hess <joey@kitenet.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Fix t4030-diff-textconv.shAlex Riesen2008-11-23
| | | | | | | | | | | | | | | | | | | | | Avoid passing cygwin pathnames to Perl. Some Perls have problems using them Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Fix handle leak in sha1_file/unpack_objects if there were damaged object dataAlex Riesen2008-11-23
| |/ |/| | | | | | | | | | | | | | | In the case of bad packed object CRC, unuse_pack wasn't called after check_pack_crc which calls use_pack. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Acked-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | git-commit.txt - mention that files listed on the command line must be known ↵Mark Burton2008-11-18
| | | | | | | | | | | | | | to git. Signed-off-by: Mark Burton <markb@ordern.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Documentation: rev-list-options.txt: added --branches, --tags & --remotes.Mark Burton2008-11-18
| | | | | | | | | | | | | | Added simple descriptions of these options (based on description of --all). Signed-off-by: Mark Burton <markb@ordern.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | builtin-branch: use strbuf in rename_branch()Miklos Vajna2008-11-18
| | | | | | | | | | | | | | | | In case the length of branch name is greather then PATH_MAX-11, we write to unallocated memory otherwise. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | builtin-branch: use strbuf in fill_tracking_info()Miklos Vajna2008-11-18
| | | | | | | | | | | | | | | | This is just about using the API, though in case of ~ 10^100 commits, this would fix the problem of writing to unallocated memory as well. ;-) Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | builtin-branch: use strbuf in delete_branches()Miklos Vajna2008-11-18
| | | | | | | | | | | | | | | | In case the length of branch name is greather then PATH_MAX-7, we write to unallocated memory otherwise. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'maint'Junio C Hamano2008-11-17
|\ \ | |/ | | | | | | * maint: request-pull: make usage string match manpage
| * request-pull: make usage string match manpageStefan Naewe2008-11-17
| | | | | | | | | | | | | | | | The usage string of 'git request-pull' differs from he manpage which gives the correct 'synopsis'. Signed-off-by: Stefan Naewe <stefan.naewe@atlas-elektronik.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Documentation: tutorial: add information about "git help" at the beginningChristian Couder2008-11-17
| | | | | | | | | | | | | | | | | | | | | | Talking about "git help" is useful because it has a few more features (like when using it without arguments or with "-a") and it may work on non unix like platforms. Also add a few links to git-help(1) in "See also" sections. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Documentation: user-manual: add information about "git help" at the beginningChristian Couder2008-11-17
| | | | | | | | | | | | | | | | | | Talking about "git help" is useful because it has a few more features (like when using it without arguments or with "-a") and it may work on non unix like platforms. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | builtin-remote.c: plug a small memory leak in get_one_remote_for_updates()Junio C Hamano2008-11-17
| | | | | | | | | | | | | | | | | | | | We know that the string pointed at by remote->name won't change. It can be borrowed as the key in the string_list without copying. Other parts of existing code such as get_one_entry() already rely on this fact. Noticed by Cheng Renquan. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | git-remote: match usage string with the manual pagesCheng Renquan2008-11-17
| | | | | | | | | | Signed-off-by: Cheng Renquan <crquan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge git://repo.or.cz/git-guiJunio C Hamano2008-11-16
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://repo.or.cz/git-gui: git-gui: Fix the search bar destruction handler. Update the po template git-gui: Implement automatic rescan after Tool execution. git-gui: Allow Tools request arguments from the user. git-gui: Add a Tools menu for arbitrary commands. git-gui: Fix the after callback execution in rescan. git-gui: Implement system-wide configuration handling. git-gui: try to provide a window icon under X
| * | git-gui: Fix the search bar destruction handler.Alexander Gavrilov2008-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since delete_this is an ordinary function, it should not be passed to cb; otherwise it produces errors when blame windows are closed. Unfortunately, it is not noticeable when blame is shown in the master window, so I missed this bug. Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | Update the po templateShawn O. Pearce2008-11-16
| | | | | | | | | | | | Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Implement automatic rescan after Tool execution.Alexander Gavrilov2008-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Tools menu is generally intended for commands that affect the working directory or repository state. Thus, the user would usually want to initiate rescan after execution of a tool. This commit implements it. In case somebody would want to avoid rescanning after certain tools, it also adds an option that controls it, although it is not made available through the Add dialog. Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Allow Tools request arguments from the user.Alexander Gavrilov2008-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While static commands are already useful, some tools need additional parameters to reach maximum usability. This commit adds support for passing them one revision name parameter, and one arbitrary string. With this addition, the tools menu becomes flexible enough to implement basic rebase support: [core] editor = kwrite [guitool "Rebase/Abort"] cmd = git rebase --abort confirm = yes [guitool "Rebase/Continue"] cmd = git rebase --continue [guitool "Rebase/Skip Commit"] cmd = git rebase --skip confirm = yes [guitool "Rebase/Start..."] cmd = git rebase $ARGS $REVISION $CUR_BRANCH title = Start Rebase prompt = Rebase Current Branch argprompt = Flags revprompt = New Base revunmerged = yes Some of the options, like title or prompt, are intentionally not included in the Add dialog to avoid clutter. Also, the dialog handles argprompt and revprompt as boolean vars. Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Add a Tools menu for arbitrary commands.Alexander Gavrilov2008-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to the emphasis on scriptability in the git design, it is impossible to provide 100% complete GUI. Currently unaccounted areas include git-svn and other source control system interfaces, TopGit, all custom scripts. This problem can be mitigated by providing basic customization capabilities in Git Gui. This commit adds a new Tools menu, which can be configured to contain items invoking arbitrary shell commands. The interface is powerful enough to allow calling both batch text programs like git-svn, and GUI editors. To support the latter use, the commands have access to the name of the currently selected file through the environment. Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Fix the after callback execution in rescan.Alexander Gavrilov2008-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The rescan function receives a callback command as its parameter, which is supposed to be executed after the scan finishes. It is generally used to update status. However, rescan may initiate a loading of a diff, which always calls ui_ready after completion. If the after handler is called before that, ui_ready will override the new status. This commit ensures that the after callback is properly threaded through the diff machinery. Since it uncovered the fact that force_first_diff actually didn't work due to an undeclared global variable, and the desired effects appeared only because of the race condition between the diff system and the rescan callback, I also reimplement this function to make it behave as originally intended. Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: Implement system-wide configuration handling.Alexander Gavrilov2008-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the old implementation any system-wide options appear to be set locally in the current repository. This commit adds explicit handling of system options, essentially interpreting them as customized default_config. The difficulty in interpreting system options stems from the fact that simple 'git config' lists all values, while 'git config --global' only values set in ~/.gitconfig, excluding both local and system options. Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | git-gui: try to provide a window icon under XGiuseppe Bilotta2008-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running under X, we try to set up a window icon by providing a hand-crafted 16x16 Tk photo image equivalent to the .ico. Wrap in a catch because the earlier Tcl/Tk 8.4 releases didn't provide the 'wm iconphoto' command. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
* | | Merge branch 'maint'Junio C Hamano2008-11-16
|\ \ \ | | |/ | |/| | | | | | | | | | * maint: Teach ls-files --with-tree=<tree> to work with options other than -c builtin-ls-files.c: coding style fix.
| * | Teach ls-files --with-tree=<tree> to work with options other than -cJunio C Hamano2008-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Originally --with-tree=<tree> was designed for the sole purpose of checking if a given pathspec makes sense as a parameter to git-commit using it in conjunction with --error-unmatch. It had logic to avoid showing the same entry (one came from the original index, another from the overlayed tree) twice so that it works with -c (i.e. "show-cached"), but otherwise it was not designed to work with the flags such as -m, -d, etc. This teaches the same logic to cover the codepath for -m and -d. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | builtin-ls-files.c: coding style fix.Junio C Hamano2008-11-16
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'bc/maint-keep-pack'Junio C Hamano2008-11-16
|\ \ \ | | | | | | | | | | | | | | | | * bc/maint-keep-pack: repack: only unpack-unreachable if we are deleting redundant packs
| * | | repack: only unpack-unreachable if we are deleting redundant packsBrandon Casey2008-11-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The -A option calls pack-objects with the --unpack-unreachable option so that the unreachable objects in local packs are left in the local object store loose. But if the -d option to repack was _not_ used, then these unpacked loose objects are redundant and unnecessary. Update tests in t7701. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'jk/commit-v-strip'Junio C Hamano2008-11-16
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * jk/commit-v-strip: status: show "-v" diff even for initial commit wt-status: refactor initial commit printing define empty tree sha1 as a macro