aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* graph API: avoid printing unnecessary padding before some octopus mergesAdam Simpkins2008-06-01
| | | | | | | | | | | | | | | | | | | | | When an octopus merge is printed, several lines are printed before it to move over existing branch lines to its right. This is needed to make room for the children of the octopus merge. For example: | | | | | | \ \ | | \ \ | | \ \ | M---. \ \ | |\ \ \ \ \ However, this step isn't necessary if there are no branch lines to the right of the octopus merge. Therefore, skip this step when it is not needed, to avoid printing extra lines that don't really serve any purpose. Signed-off-by: Adam Simpkins <adam@adamsimpkins.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* graph API: improve display of merge commitsAdam Simpkins2008-06-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | This change improves the way merge commits are displayed, to eliminate a few visual artifacts. Previously, merge commits were displayed as: | M \ | |\ | As pointed out by Teemu Likonen, this didn't look nice if the rightmost branch line was displayed as '\' on the previous line, as it then appeared to have an extra space in it: | |\ | M \ | |\ | This change updates the code so that branch lines to the right of merge commits are printed slightly differently depending on how the previous line was displayed: | |\ | | | | | / | M \ | M | | M | | |\ \ | |\ \ | |\ \ Signed-off-by: Adam Simpkins <adam@adamsimpkins.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* git-svn fails in prop_walk if $self->{path} is not emptyChristian Engwer2008-06-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If url://repo/trunk is the current Git branch, prop_walk strips trunk from the path name. That is useful as, for example "git svn show-ignore" should not return results like trunk/foo but foo if svn:ignore for trunk includes foo. The problem now is that prop_walk strips trunk from the path and then calls itself recursively. But now trunk is missing in the path and get_dir fails, because it is called for a non existing path. The attached patch fixed the problem, by adding the previously stipped $self->{path} in the recursive call. I tested it with my current git-svn repository for the commands show-ignore and show-external. Patch was submitted through http://bugs.debian.org/477393 Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Add a --dry-run option to git-svn rebaseSeth Falcon2008-06-01
| | | | | | | | | | When working with multiple branches in an svn repository, it can be useful to verify the svn repository and local tracking branch that will be used for the rebase operation. Signed-off-by: Seth Falcon <seth@userprimary.net> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Fix path duplication in git svn commit-diffKarl Hasselström2008-06-01
| | | | | | | | | | | | | | | | | | Given an SVN repo file:///tmp/svntest/repo, trying to commit changes to a file proj/trunk/foo.txt in that repo with this command line git svn commit-diff -r2 HEAD^ HEAD file:///tmp/svntest/repo/proj/trunk gave the error message Filesystem has no item: File not found: transaction '2-6', path '/proj/trunk/proj/trunk/foo.txt' This fixes the duplication. Signed-off-by: Karl Hasselström <kha@treskal.com> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Clarify description of <repository> argument to pull/fetch for naming remotes.John J. Franey2008-05-31
| | | | | | | | | | Alter the description of <repository> in OPTIONS section to explicitly state that a 'remote name' is accepted. Rewrite REMOTES section to more directly identify the different kinds of remote-name permitted. Signed-off-by: John J. Franey <jjfraney@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* rollback lock files on more signals than just SIGINTPaolo Bonzini2008-05-31
| | | | | | | | | Other signals are also common, for example SIGTERM and SIGHUP. This patch modifies the lock file mechanism to catch more signals. It also modifies http-push.c which was missing SIGTERM. Signed-off-by: Paolo Bonzini <bonzini@gnu.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Revision walking documentation: document most important functionsMiklos Vajna2008-05-31
| | | | | | | Unfortunately the list is not complete, but includes the essential ones. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* gitweb: Remove gitweb/test/ directoryJakub Narebski2008-05-31
| | | | | | | | | | | | Testing if gitweb handles filenames with spaces, filenames with plus sign ('+') which encodes spaces in CGI parameters (in URLs), and filenames with Unicode characters should be handled by gitweb tests. Those files are remainder of the time when gitweb was project on its own, not a part of git (with its testsuite). Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Add shortcut in refresh_cache_ent() for marked entries.Marius Storm-Olsen2008-05-31
| | | | | | | | | When a cache entry has been marked as CE_VALID, the user has promised us that any change in the work tree does not matter. Just mark the entry as up-to-date, and continue. Signed-off-by: Marius Storm-Olsen <marius@trolltech.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Clearify the documentation for core.ignoreStatMarius Storm-Olsen2008-05-31
| | | | | | | | | The previous documentation didn't make it clear that the "assume unchanged" was on per file basis, and not a global flag. Signed-off-by: Marius Storm-Olsen <marius@trolltech.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* "git checkout -- paths..." should error out when paths cannot be writtenJunio C Hamano2008-05-28
| | | | | | | | | When "git checkout -- paths..." cannot update work tree for whatever reason, checkout_entry() correctly issued an error message for the path to the end user, but the command ignored the error, causing the entire command to succeed. This fixes it. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Documentation: git-cherry uses git-patch-idJunio C Hamano2008-05-28
| | | | | | | Geoffrey Irving noticed that git-cherry talks about comparing commits without hinting how they are compared. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Manual subsection to refer to other pages is SEE ALSOJunio C Hamano2008-05-28
| | | | | | Consistently say so in all caps as it is customary to do so. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* bisect: use "$GIT_DIR/BISECT_START" to check if we are bisectingChristian Couder2008-05-28
| | | | | | | | | | | | | | | | | | | It seems simpler and safer to use the BISECT_START file everywhere to decide if we are bisecting or not, instead of using it in some places and BISECT_NAMES in other places. In commit 6459c7c6786aa9bda0c7a095c9db66c36da0e5f0 (Nov 18 2007, Bisect: use "$GIT_DIR/BISECT_NAMES" to check if we are bisecting.), we decided to use BISECT_NAMES but code changed a lot and we now have to check BISECT_START first in the "bisect_start" function anyway. This patch also makes things a little bit safer by creating the BISECT_START file first and deleting it last, and also by adding checks in "bisect_clean_state". Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* builtin-fetch.c (store_updated_refs): Honor update_local_ref() return valueDmitry V. Levin2008-05-28
| | | | | | | | | | | Sync with builtin-fetch--tool.c where append_fetch_head() honors update_local_ref() return value. This fixes non fast forward fetch exit status, http://bugzilla.altlinux.org/show_bug.cgi?id=15037 Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* fix sha1_pack_index_name()Junio C Hamano2008-05-28
| | | | | | | | | | | An earlier commit 633f43e (Remove redundant code, eliminate one static variable, 2008-05-24) had a thinko (perhaps an eyeno) that broke sha1_pack_index_name() function. One symptom of this was that the http walker is now completely broken. This should fix it. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Git::cat_blob: allow using an empty blob to fix git-svn breakageJunio C Hamano2008-05-27
| | | | | | | | | | | | | Recent "git-svn optimization" series introduced Git::cat_blob() subroutine whose interface was broken in that it returned the size of the blob but signalled an error by returning 0. You can never use an empty blob with such an interface. This fixes the interface to return a negative value to signal an error. Reported by Björn Steinbrink. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* t5100: Avoid filename "nul"Junio C Hamano2008-05-27
| | | | | | | | | There are broken filesystems that cannot have a file whose name is "nul" anywhere on it. Rename the test file to make ourselves more portable. Noticed by Mark Levedahl. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Merge 1.5.5.3 inJunio C Hamano2008-05-27
|\
| * GIT 1.5.5.3v1.5.5.3Junio C Hamano2008-05-27
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * commit --interactive: properly update the index before commitingGerrit Pape2008-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When adding files through git commit --interactive, and 'quit' afterwards, the message in the editor of the commit message indicates that many (maybe all) files are deleted from the tree. Dismissing that and running git commit afterwards does the right thing. This commit fixes git commit --interactive to properly update the index before commiting. Reported by Jiří Paleček through http://bugs.debian.org/480429 Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * gitweb: only display "next" links in logs if there is a next pageLea Wiemann2008-05-27
| | | | | | | | | | | | | | | | | | There was a bug in the implementation of the "next" links in format_paging_nav (for log and shortlog), which caused the next links to always be displayed, even if there is no next page. This fixes it. Signed-off-by: Lea Wiemann <LeWiemann@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * Revert "filter-branch: subdirectory filter needs --full-history"Johannes Sixt2008-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit cfabd6eee1745cfec58cfcb794ce8847e43b888a. I had implemented it without understanding what --full-history does. Consider this history: C--M--N / / / A--B / \ / D-/ where B and C modify a path, X, in the same way so that the result is identical, and D does not modify it at all. With the path limiter X and without --full-history this is simplified to A--B i.e. only one of the paths via B or C is chosen. I had assumed that --full-history would keep both paths like this C--M / / A--B removing the path via D; but in fact it keeps the entire history. Currently, git does not have the capability to simplify to this intermediary case. However, the other extreme to keep the entire history is not wanted either in usual cases. I think we can expect that histories like the above are rare, and in the usual cases we want a simplified history. So let's remove --full-history again. (Concerning t7003, subsequent tests depend on what the test case sets up, so we can't just back out the entire test case.) Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * Documentation/git-bundle.txt: fix synopsisGerrit Pape2008-05-27
| | | | | | | | | | | | | | | | The <git-rev-list args> are mandatory to git bundle create, not optional. The usage output of git bundle is already right on this. Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | clone: make sure we support the transport typeJeff King2008-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If we use an unsupported transport (e.g., http when curl support is not compiled in), transport_get reports an error to the user, but we still get a transport object. We need to manually check and abort the clone process at that point, or we end up with a segfault. Noticed by Thomas Rast. Signed-off-by: Jeff King <peff@peff.net> Acked-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | t5700-clone-reference: Quote $UJohannes Sixt2008-05-27
| | | | | | | | | | | | | | The new "trash directory" bites again. Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Add some tests for git update-ref -dKarl Hasselström2008-05-27
| | | | | | | | | | Signed-off-by: Karl Hasselström <kha@treskal.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'jc/diff-no-no-index'Junio C Hamano2008-05-26
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | * jc/diff-no-no-index: git diff --no-index: default to page like other diff frontends git-diff: allow --no-index semantics a bit more "git diff": do not ignore index without --no-index diff-files: do not play --no-index games tests: do not use implicit "git diff --no-index"
| * | git diff --no-index: default to page like other diff frontendsJunio C Hamano2008-05-26
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | git-diff: allow --no-index semantics a bit moreJunio C Hamano2008-05-26
| | | | | | | | | | | | | | | | | | | | | | | | Even when inside a git work tree, if two paths are given and at least one is clearly outside the work tree, it cannot be a request to diff a tracked path anyway; allow such an invocation to use --no-index semantics. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | "git diff": do not ignore index without --no-indexJunio C Hamano2008-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even if "foo" and/or "bar" does not exist in index, "git diff foo bar" should not change behaviour drastically from "git diff foo bar baz" or "git diff foo". A feature that "sometimes works and is handy" is an unreliable cute hack. "git diff foo bar" outside a git repository continues to work as a more colourful alternative to "diff -u" as before. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | diff-files: do not play --no-index gamesJunio C Hamano2008-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Being able to say "git diff A B" outside a git repository and getting a colourful version of "diff -u A B" may be nice, but such a cute hack should not give bogus results to scripts that want to give two paths, either or both of which happen to have been removed from the work tree, to "git diff-files". Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | tests: do not use implicit "git diff --no-index"Junio C Hamano2008-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As a general principle, we should not use "git diff" to validate the results of what git command that is being tested has done. We would not know if we are testing the command in question, or locating a bug in the cute hack of "git diff --no-index". Rather use test_cmp for that purpose. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'maint'Junio C Hamano2008-05-26
|\ \ \ | | |/ | |/| | | | | | | | | | * maint: Documentation: fix graph in git-rev-parse.txt show-branch --current: do not barf on detached HEAD
| * | Merge branch 'gp/bisect-fix' into maintJunio C Hamano2008-05-26
| |\ \ | | | | | | | | | | | | | | | | | | | | * gp/bisect-fix: bisect: print an error message when "git rev-list --bisect-vars" fails git-bisect.sh: don't accidentally override existing branch "bisect"
| * | | Documentation: fix graph in git-rev-parse.txtMichele Ballabio2008-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Preformatted html and man pages show a mangled graph, caused by a backslash. Commit f1ec6b22a8c1ab1cca0f1875f85aea5d2434e5a6 fixed this same issue, but it seems that new versions of the Asciidoc toolchain changed their behaviour. Signed-off-by: Michele Ballabio <barra_cuda@katamail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | show-branch --current: do not barf on detached HEADJunio C Hamano2008-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code assumed that there always is the current branch, but the result from resolve_ref() on detached HEAD does not even start with "refs/heads/". Originally noticed and fixed by Stephan Beyer. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge git://repo.or.cz/git-guiJunio C Hamano2008-05-26
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://repo.or.cz/git-gui: git-gui: Vertically align textboxes with labels git-gui: Handle workdir detection when CYGWIN=nowinsymlinks git-gui: Add a --trace command line option
| * | | | git-gui: Vertically align textboxes with labelsgitgui-0.10.2Twiinz2008-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In git-gui after clicking either on 'Create New Repository' or 'Open Existing Repository' the form elements aren't centered like they are pretty much everywhere else in the app. At least when ran on a mac, haven't checked on other platforms. Using grid instead of pack seems to fix this. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | | | git-gui: Handle workdir detection when CYGWIN=nowinsymlinksShawn O. Pearce2008-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the user has put nowinsymlinks into their CYGWIN environment variable any symlinks created by a Cygwin process (e.g. ln -s) will not have the ".lnk" suffix. In this case workdir is still a workdir, but our detection of looking for "info.lnk" fails as the symlink is actually a normal file called "info". Instead we just always use Cygwin's test executable to see if info/exclude is a file. If it is, we assume from there on it can be read by git-ls-files --others and is thus safe to use on the command line. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
| * | | | git-gui: Add a --trace command line optionShawn O. Pearce2008-05-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Often new Git users want to know what commands git-gui uses to make changes, so they can learn the command line interface by mimicking what git-gui does in response to GUI actions. Showing the direct commands being executed is easy enough to implement but this is of little value to end-users because git-gui frequently directly calls plumbing, not porcelain. Since the code is already written and tested, its fairly harmless to include. It may not help a new end-user, but it can help with debugging git-gui or reverse-engineering its logic to further make changes to it or implement another GUI for Git. Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
* | | | | Makefile: fix dependency on wt-status.hJunio C Hamano2008-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Noticed by Hannes, reported by Dscho. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | hg-to-git: add --verbose optionJohannes Schindelin2008-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds an option to make hg-to-git quiet by default. Note: it only suppresses those messages that would be printed when everything was up-to-date. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Acked-by: Stelian Pop <stelian@popies.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | Documentation/git.txt: link to 1.5.5.2 documentation.Junio C Hamano2008-05-25
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | Merge branch 'maint'Junio C Hamano2008-05-25
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * maint: builtin-fast-export: Only output a single parent per line Release Notes for 1.5.5.2 Conflicts: RelNotes
| * | | | Merge branch 'jk/maint-send-email-compose' into maintJunio C Hamano2008-05-25
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * jk/maint-send-email-compose: send-email: rfc2047-quote subject lines with non-ascii characters send-email: specify content-type of --compose body
| * \ \ \ \ Merge branch 'hb/maint-send-email-quote-recipients' into maintJunio C Hamano2008-05-25
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * hb/maint-send-email-quote-recipients: Fix recipient santitization
| * \ \ \ \ \ Merge branch 'maint-1.5.4' into maintJunio C Hamano2008-05-25
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * maint-1.5.4: builtin-fast-export: Only output a single parent per line
| | * | | | | | builtin-fast-export: Only output a single parent per linePieter de Bie2008-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to the git-fast-import man-page, you can only put a single committish per merge: line, like this: merge :10 merge :11 However, git-fast-export puts all parents on a single line, like this: merge :10 :11 This changes fast-export to output a single parent per line. Otherwise neither git-fast-import nor bzr-fast-import can read its output. [jc: fix-up to remove excess LF in the output that makes fast-import barf] Signed-off-by: Pieter de Bie <pdebie@ai.rug.nl> Signed-off-by: Junio C Hamano <gitster@pobox.com>