Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-10-12Replace calls to strbuf_init(&foo, 0) with STRBUF_INIT initializerBrandon Casey
Many call sites use strbuf_init(&foo, 0) to initialize local strbuf variable "foo" which has not been accessed since its declaration. These can be replaced with a static initialization using the STRBUF_INIT macro which is just as readable, saves a function call, and takes up fewer lines. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-12print an error message for invalid pathDmitry Potapov
If verification of path failed, it is always better to print an error message saying this than relying on the caller function to print a meaningful error message (especially when the callee already prints error message for another situation). Because the callers of add_index_entry_with_check() did not print any error message, it resulted that the user would not notice the problem when checkout of an invalid path failed. Signed-off-by: Dmitry Potapov <dpotapov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-12Documentation: remove stale howto/rebase-and-edit.txtThomas Rast
The "rebase and edit" howto predates the much easier solution 'git rebase -i' by two years. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-12t9001: use older Getopt::Long boolean prefix '--no' rather than '--no-'Brandon Casey
Since dbf5e1e9, the '--no-validate' option is a Getopt::Long boolean option. The '--no-' prefix (as in --no-validate) for boolean options is not supported in Getopt::Long version 2.32 which was released with Perl 5.8.0. This version only supports '--no' as in '--novalidate'. More recent versions of Getopt::Long, such as version 2.34, support either prefix. So use the older form in the tests. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-10Merge branch 'maint'Shawn O. Pearce
* maint: rebase -i: do not fail when there is no commit to cherry-pick test-lib: fix color reset in say_color() fix pread()'s short read in index-pack Conflicts: csum-file.c
2008-10-10rebase -i: do not fail when there is no commit to cherry-pickJohannes Schindelin
In case there is no commit to apply (for example because you rebase to upstream and all your local patches have been applied there), do not fail. The non-interactive rebase already behaves that way. Do this by introducing a new command, "noop", which is substituted for an empty commit list, so that deleting the commit list can still abort as before. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-10test-lib: fix color reset in say_color()Miklos Vajna
When executing a single test with colors enabled, the cursor was not set back to the previous one, and you had to hit an extra enter to get it back. Work around this problem by calling 'tput sgr0' before printing the final newline. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-10fix pread()'s short read in index-packNicolas Pitre
Since v1.6.0.2~13^2~ the completion of a thin pack uses sha1write() for its ability to compute a SHA1 on the written data. This also provides data buffering which, along with commit 92392b4a45, will confuse pread() whenever an appended object is 1) freed due to memory pressure because of the depth-first delta processing, and 2) needed again because it has many delta children, and 3) its data is still buffered by sha1write(). Let's fix the issue by simply forcing cached data out when such an object is written so it can be pread()'d at leisure. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-09Merge branch 'js/objc-funchdr'Shawn O. Pearce
* js/objc-funchdr: Teach git diff about Objective-C syntax
2008-10-09Merge branch 'pb/gitweb'Shawn O. Pearce
* pb/gitweb: gitweb: Support for simple project search form gitweb: Make the by_tag filter delve in forks as well gitweb: Support for tag clouds gitweb: Add support for extending the action bar with custom links gitweb: Sort the list of forks on the summary page by age gitweb: Clean-up sorting of project list
2008-10-09Merge branch 'dm/svn-branch'Shawn O. Pearce
* dm/svn-branch: Add git-svn branch to allow branch creation in SVN repositories
2008-10-09Merge branch 'bc/xdiffnl'Shawn O. Pearce
* bc/xdiffnl: xdiff-interface.c: strip newline (and cr) from line before pattern matching
2008-10-09Merge branch 'dp/cywginstat'Shawn O. Pearce
* dp/cywginstat: cygwin: Use native Win32 API for stat mingw: move common functionality to win32.h add have_git_dir() function
2008-10-09Merge branch 'lt/time-reject-fractional-seconds'Shawn O. Pearce
* lt/time-reject-fractional-seconds: date/time: do not get confused by fractional seconds
2008-10-09Merge branch 'jc/add-ita'Shawn O. Pearce
* jc/add-ita: git-add --intent-to-add (-N)
2008-10-09Merge branch 'mw/sendemail'Shawn O. Pearce
* mw/sendemail: bash completion: Add --[no-]validate to "git send-email" send-email: signedoffcc -> signedoffbycc, but handle both Docs: send-email: Create logical groupings for man text Docs: send-email: Create logical groupings for --help text Docs: send-email: Remove unnecessary config variable description Docs: send-email: --chain_reply_to -> --[no-]chain-reply-to send-email: change --no-validate to boolean --[no-]validate Docs: send-email: Man page option ordering Docs: send-email usage text much sexier Docs: send-email's usage text and man page mention same options
2008-10-09Merge branch 'mv/merge-refresh'Shawn O. Pearce
* mv/merge-refresh: builtin-merge: refresh the index before calling a strategy
2008-10-09Merge branch 'ph/parseopt'Shawn O. Pearce
* ph/parseopt: parse-opt: migrate builtin-merge-file. parse-opt: migrate git-merge-base. parse-opt: migrate fmt-merge-msg.
2008-10-09Merge branch 'rz/grepz'Shawn O. Pearce
* rz/grepz: git grep: Add "-z/--null" option as in GNU's grep.
2008-10-09Merge branch 'mg/verboseprune'Shawn O. Pearce
* mg/verboseprune: make prune report removed objects on -v
2008-10-09Merge branch 'maint'Shawn O. Pearce
* maint: builtin-apply: fix typo leading to stack corruption git-stash.sh: fix flawed fix of invalid ref handling (commit da65e7c1) builtin-merge.c: allocate correct amount of memory Makefile: do not set NEEDS_LIBICONV for Solaris 8 rebase -i: remove leftover debugging rebase -i: proper prepare-commit-msg hook argument when squashing
2008-10-09Merge branch 'sg/maint-intrebase-msghook' into maintShawn O. Pearce
* sg/maint-intrebase-msghook: rebase -i: remove leftover debugging rebase -i: proper prepare-commit-msg hook argument when squashing
2008-10-09builtin-apply: fix typo leading to stack corruptionImre Deak
This typo led to stack corruption for lines with whitespace fixes and length > 1024. Signed-off-by: Imre Deak <imre.deak@gmail.com> Looks-good-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-09git-stash.sh: fix flawed fix of invalid ref handling (commit da65e7c1)Brandon Casey
The referenced commit tried to fix a flaw in stash's handling of a user supplied invalid ref. i.e. 'git stash apply fake_ref@{0}' should fail instead of applying stash@{0}. But, it did so in a naive way by avoiding the use of the --default option of rev-parse, and instead manually supplied the default revision if the user supplied an empty command line. This prevented a common usage scenario of supplying flags on the stash command line (i.e. non-empty command line) which would be parsed by lower level git commands, without supplying a specific revision. This should fall back to the default revision, but now it causes an error. e.g. 'git stash show -p' The correct fix is to use the --verify option of rev-parse, which fails properly if an invalid ref is supplied, and still allows falling back to a default ref when one is not supplied. Convert stash-drop to use --verify while we're at it, since specifying multiple revisions for any of these commands is also an error and --verify makes it so. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-09Merge branch 'jk/maint-soliconv' into maintShawn O. Pearce
* jk/maint-soliconv: Makefile: do not set NEEDS_LIBICONV for Solaris 8
2008-10-09Cleanup in sha1_file.c::cache_or_unpack_entry()Miklos Vajna
This patch just removes an unnecessary goto which makes the code easier to read and shorter. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-09builtin-merge.c: allocate correct amount of memoryBrandon Casey
Fix two memory allocation errors which allocate space for a pointer rather than enough space for the structure itself. This: struct commit_list *parent = xmalloc(sizeof(struct commit_list *)); should have been this: struct commit_list *parent = xmalloc(sizeof(struct commit_list)); But while we're at it, change the allocation to reference the variable it is allocating memory for to try to prevent a similar mistake, for example if the type is changed, in the future. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Acked-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-08Merge branch 'maint'Shawn O. Pearce
* maint: Do not use errno when pread() returns 0 git init: --bare/--shared overrides system/global config git-push.txt: Describe --repo option in more detail git rm: refresh index before up-to-date check Fix a few typos in relnotes
2008-10-08Do not use errno when pread() returns 0Samuel Tardieu
If we use pread() while at the end of the file, it will return 0, which is not an error from the operating system point of view. In this case, errno has not been set and must not be used. Signed-off-by: Samuel Tardieu <sam@rfc1149.net> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-08Replace xmalloc/memset(0) pairs with xcallocBrandon Casey
Many call sites immediately initialize allocated memory with zero after calling xmalloc. A single call to xcalloc can replace this two-call sequence. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-08git init: --bare/--shared overrides system/global configDeskin Miller
If core.bare or core.sharedRepository are set in /etc/gitconfig or ~/.gitconfig, then 'git init' will read the values when constructing a new config file; reading them, however, will override the values specified on the command line. In the case of --bare, this ends up causing a segfault, without the repository being properly initialised; in the case of --shared, the permissions are set according to the existing config settings, not what was specified on the command line. This fix saves any specified values for --bare and --shared prior to reading existing config settings, and restores them after reading but before writing the new config file. core.bare is ignored in all situations, while core.sharedRepository will only be used if --shared is not specified to git init. Also includes testcases which use a specified global config file override, demonstrating the former failure scenario. Signed-off-by: Deskin Miller <deskinm@umich.edu> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-08git-push.txt: Describe --repo option in more detailJohannes Sixt
The --repo option was described in a way that the reader would have to assume that it is the same as the <repository> parameter. But it actually servers a purpose, which is now written down. Furthermore, the --mirror option was missing from the synopsis. Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-08git rm: refresh index before up-to-date checkJohannes Schindelin
Since "git rm" is supposed to be porcelain, we should convince it to be user friendly by refreshing the index itself. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-07Fix a few typos in relnotesMikael Magnusson
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06Teach git diff about Objective-C syntaxJonathan del Strother
Add support for recognition of Objective-C class & instance methods, C functions, and class implementation/interfaces. Signed-off-by: Jonathan del Strother <jon.delStrother@bestbefore.tv> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06Add git-svn branch to allow branch creation in SVN repositoriesFlorian Ragwitz
[ew: fixed a warning to stderr causing t9108 to fail] Signed-off-by: Florian Ragwitz <rafl@debian.org> Signed-off-by: Deskin Miller <deskinm@umich.edu> Acked-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06Merge branch 'maint'Shawn O. Pearce
* maint: Update release notes for 1.6.0.3 Teach rebase -i to honor pre-rebase hook docs: describe pre-rebase hook do not segfault if make_cache_entry failed make prefix_path() never return NULL fix bogus "diff --git" header from "diff --no-index" Fix fetch/clone --quiet when stdout is connected builtin-blame: Fix blame -C -C with submodules. bash: remove fetch, push, pull dashed form leftovers Conflicts: diff.c
2008-10-06Update release notes for 1.6.0.3Shawn O. Pearce
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06do not segfault if make_cache_entry failedDmitry Potapov
Signed-off-by: Dmitry Potapov <dpotapov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06Teach rebase -i to honor pre-rebase hookNanako Shiraishi
The original git-rebase honored pre-rebase hook so that public branches can be protected from getting rebased, but rebase --interactive ignored the hook entirely. This fixes it. Signed-off-by: Nanako Shiraishi <nanako3@lavabit.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06docs: describe pre-rebase hookNanako Shiraishi
Documentation/git-rebase.txt talks about pre-rebase hook, but it appears that Documentation/git-hooks.txt does not have corresponding entry for it. Signed-off-by: Nanako Shiraishi <nanako3@lavabit.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06do not segfault if make_cache_entry failedDmitry Potapov
Signed-off-by: Dmitry Potapov <dpotapov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06make prefix_path() never return NULLDmitry Potapov
There are 9 places where prefix_path is called, and only in one of them the returned pointer was checked to be non-zero and only to call exit(128) as it is usually done by die(). In other 8 places, the returned value was not checked and it caused SIGSEGV when a path outside of the working tree was used. For instance, running git update-index --add /some/path/outside caused SIGSEGV. This patch changes prefix_path() to die if the path is outside of the repository, so it never returns NULL. Signed-off-by: Dmitry Potapov <dpotapov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06fix bogus "diff --git" header from "diff --no-index"Linus Torvalds
When "git diff --no-index" is given an absolute pathname, it would generate a diff header with the absolute path prepended by the prefix, like: diff --git a/dev/null b/foo Not only is this nonsensical, and not only does it violate the description of diffs given in git-diff(1), but it would produce broken binary diffs. Unlike text diffs, the binary diffs don't contain the filenames anywhere else, and so "git apply" relies on this header to figure out the filename. This patch just refuses to use an invalid name for anything visible in the diff. Now, this fixes the "git diff --no-index --binary a /dev/null" kind of case (and we'll end up using "a" as the basename), but some other insane cases are impossible to handle. If you do git diff --no-index --binary a /bin/echo you'll still get a patch like diff --git a/a b/bin/echo old mode 100644 new mode 100755 index ... and "git apply" will refuse to apply it for a couple of reasons, and the diff is simply bogus. And that, btw, is no longer a bug, I think. It's impossible to know whethe the user meant for the patch to be a rename or not. And as such, refusing to apply it because you don't know what name you should use is probably _exactly_ the right thing to do! Original problem reported by Imre Deak. Test script and problem description by Jeff King. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06Fix fetch/clone --quiet when stdout is connectedTuncer Ayaz
Fixes the `git clone --quiet` issue raised by Dave Jones in http://marc.info/?l=git&m=121529226023180&w=2 With this simple patch applied we no longer see the following remote messages as no-progress is correctly sent to the remote site: remote: Counting objects: 84102, done. remote: Compressing objects: 100% (24720/24720), done. remote: Total 84102 (delta 60949), reused 80810 (delta 57900) Signed-off-by: Tuncer Ayaz <tuncer.ayaz@gmail.com> Acked-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06builtin-blame: Fix blame -C -C with submodules.Alexander Gavrilov
When performing copy detection, git-blame tries to read gitlinks as blobs, which causes it to die. This patch adds a check to skip them. Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-06bash: remove fetch, push, pull dashed form leftoversSZEDER Gábor
We don't provide complation for git-commands in dashed form anymore, so there is no need to keep those cases. Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Tested-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-03builtin-merge: refresh the index before calling a strategyMiklos Vajna
In case a file is touched but has no real changes then we just have to update the index and should not error out. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-03Makefile: do not set NEEDS_LIBICONV for Solaris 8Jeff King
This breaks my build on Solaris 8, as there is no separate libiconv. The history of this line is somewhat convoluted. In 2fd955c (in November 2005), NEEDS_LIBICONV was turned on for all Solaris builds, claiming to "fix an error in Solaris 10 by setting NEEDS_LIBICONV". Later, e15f545 (in February of 2006) claimed that "Solaris 9+ don't need iconv", and moved NEEDS_LIBICONV into a section for Solaris 8. Furthermore, Brandon Casey claims in <5A1KxlhmUIHe8iXPxnXYuNXsq0Yjlbwkz2eBin3z7ELuL9nK-4tSpw@cipher.nrlssc.navy.mil> that he does not set NEEDS_LIBICONV for Solaris 7. So either one of those commits is totally wrong, or there is some other magic going on where some Solaris installs need it and others don't. Given Brandon's statement and my problems on Solaris 8 with NEEDS_LIBICONV, I am inclined to think the first commit was bogus, and that NEEDS_LIBICONV shouldn't be set for Solaris at all by default. If somebody wants to use iconv and has installed it manually, they can set it in their config.mak. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-10-03rebase -i: remove leftover debuggingSZEDER Gábor
Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>