aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* cvsserver: Actually implement --export-allFrank Lichtenheld2007-06-15
| | | | | | | | | | | Embarrassing bug number two in my options patch. Also enforce that --export-all is only ever used together with an explicit whitelist. Otherwise people might export every git repository on the whole system without realising. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* cvsserver: Let --base-path and pserver get along just fineFrank Lichtenheld2007-06-15
| | | | | | | | | | | | Embarassing bug number one in my options patch. Since the code for --base-path support rewrote the cvsroot value after comparing it with a possible existing value (i.e. from pserver authentication) the check always failed. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* cvsserver: Add some useful commandline optionsFrank Lichtenheld2007-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | Make git-cvsserver understand some options inspired by git-daemon, namely --base-path, --export-all, --strict-paths. Also allow the caller to specify a whitelist of allowed directories, again similar to git-daemon. While already adding option parsing also support the common --help and --version options. Rationale: While the gitcvs.enabled configuration option already offers means to limit git-cvsserver access to a repository, there are some use cases where other methods of access control prove to be more useful. E.g. if setting up a pserver for a collection of public repositories one might want limit the exported repositories to exactly the directory this collection is located whithout having to worry about other repositories that might lie around with the configuration variable set (never trust your users ;) Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Merge branch 'maint'Junio C Hamano2007-06-08
|\ | | | | | | | | * maint: checkout: do not get confused with ambiguous tag/branch names
| * checkout: do not get confused with ambiguous tag/branch namesJunio C Hamano2007-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Although it is not advisable, we have always allowed a branch and a tag to have the same basename (i.e. it is not illegal to have refs/heads/frotz and refs/tags/frotz at the same time). When talking about a specific commit, the interpretation of 'frotz' has always been "use tag and then check branch", although we warn when ambiguities exist. However "git checkout $name" is defined to (1) first see if it matches the branch name, and if so switch to that branch; (2) otherwise it is an instruction to detach HEAD to point at the commit named by $name. We did not follow this definition when $name appeared under both refs/heads/ and refs/tags/ -- we switched to the branch but read the tree from the tagged commit, which was utterly bogus. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Even more missing staticJunio C Hamano2007-06-08
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | More missing staticJunio C Hamano2007-06-08
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | More missing staticJunio C Hamano2007-06-08
| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Missing statics.Pierre Habouzit2007-06-08
| | | | | | | | | | Signed-off-by: Pierre Habouzit <madcoder@debian.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Active_nr is unsigned, hence can't be < 0Pierre Habouzit2007-06-08
| | | | | | | | | | Signed-off-by: Pierre Habouzit <madcoder@debian.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | cvsserver: Make req_Root more critical of its input dataFrank Lichtenheld2007-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The path submitted with the Root request has to be absolute (cvs does it this way and it may save us some sanity checks later) If multiple roots are specified (e.g. because we use pserver authentication which will already include the root), ensure that they say all the same. Probably neither is a security risk, and neither should ever be triggered by a sane client, but when validating input data, it's better to be save than sorry. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | gitview: Define __slots__ for CommitMichael Ellerman2007-06-08
| | | | | | | | | | | | | | | | | | Define __slots__ for the Commit class. This reserves space in each Commit object for only the defined variables. On my system this reduces heap usage when viewing a kernel repo by 12% ~= 55868 KB. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | gitview: Use new-style classesMichael Ellerman2007-06-08
| | | | | | | | | | | | | | | | | | | | This changes the Commit class to use new-style class, which has been available since Python 2.2 (Dec 2001). This is a necessary step in order to use __slots__[] declaration, so that we can reduce the memory footprint in the next patch. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | War on whitespaceJunio C Hamano2007-06-07
| | | | | | | | | | | | | | | | | | This uses "git-apply --whitespace=strip" to fix whitespace errors that have crept in to our source files over time. There are a few files that need to have trailing whitespaces (most notably, test vectors). The results still passes the test, and build result in Documentation/ area is unchanged. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'sv/objfixes'Junio C Hamano2007-06-06
|\ \ | | | | | | | | | | | | | | | | | | | | | * sv/objfixes: Don't assume tree entries that are not dirs are blobs git-cvsimport: Make sure to use $git_dir always instead of .git sometimes fix documentation of unpack-objects -n Accept dates before 2000/01/01 when specified as seconds since the epoch
| * | Don't assume tree entries that are not dirs are blobsSam Vilain2007-06-06
| |/ | | | | | | | | | | | | | | When scanning the trees in track_tree_refs() there is a "lazy" test that assumes that entries are either directories or files. Don't do that. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * git-cvsimport: Make sure to use $git_dir always instead of .git sometimesMichael Milligan2007-06-06
| | | | | | | | | | | | | | | | CVS import was failing on a couple repos I was trying to import. I was setting GIT_DIR=newproj.git and using the -i flag, but this bug was thwarting the effort... evil CVS. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * fix documentation of unpack-objects -nSam Vilain2007-06-06
| | | | | | | | | | | | | | unpack-objects -n didn't print the object list as promised on the manual page, so alter the documentation to reflect the behaviour Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * Accept dates before 2000/01/01 when specified as seconds since the epochJohannes Sixt2007-06-06
| | | | | | | | | | | | | | | | | | | | | | | | Tests with git-filter-branch on a repository that was converted from CVS and that has commits reaching back to 1999 revealed that it is necessary to parse dates before 2000/01/01 when they are specified as seconds since 1970/01/01. There is now still a limit, 100000000, which is 1973/03/03 09:46:40 UTC, in order to allow that dates are represented as 8 digits. Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Makefile: Remove git-merge-base from PROGRAMS.Johannes Sixt2007-06-06
| | | | | | | | | | | | | | git-merge-base is a builtin. Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | t5000: skip ZIP tests if unzip was not foundJohannes Schindelin2007-06-06
| | | | | | | | | | Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'mm/tag'Junio C Hamano2007-06-06
|\ \ | | | | | | | | | | | | * mm/tag: Teach git-tag about showing tag annotations.
| * | Teach git-tag about showing tag annotations.Matthijs Melchior2007-06-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The <pattern> for -l is now a shell pattern, not a list of grep parameters. Option -l may be repeated with another <pattern>. The new -n [<num>] option specifies how many lines from the annotation are to be printed. Not specifieing -n or -n 0 will just produce the tag names Just -n or -n 1 will show the first line of the annotation on the tag line. Other valuse for -n will show that number of lines from the annotation. The exit code used to indicate if any tag was found. This is changed due to a different implementation. A good way to test a tag for existence is to use: git show-ref --quiet --verify refs/tags/$TAGNAME Signed-off-by: Matthijs Melchior <mmelchior@xs4all.nl> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | git-branch --track: fix tracking branch computation.Junio C Hamano2007-06-06
| | | | | | | | | | | | | | | | | | | | | The original code did not take hierarchical branch names into account at all. Tested-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Fix typo in git-mergetoolJosh Triplett2007-06-06
| | | | | | | | | | | | | | | Signed-off-by: Josh Triplett <josh@freedesktop.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Add the --numbered-files option to git-format-patch.Jon Loeliger2007-06-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With this option, git-format-patch will generate simple numbered files as output instead of the default using with the first commit line appended. This simplifies the ability to generate an MH-style drafts folder with each message to be sent. Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | $EMAIL is a last resort fallback, as it's system-wide.Pierre Habouzit2007-06-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | $EMAIL is a system-wide setup that is used for many many many applications. If the git user chose a specific user.email setup, then _this_ should be honoured rather than $EMAIL. Signed-off-by: Pierre Habouzit <madcoder@debian.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | make clean should remove all the test programs tooMatthias Lederhofer2007-06-06
| | | | | | | | | | | | | | | Signed-off-by: Matthias Lederhofer <matled@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | add git-filter-branch to .gitignoreMatthias Lederhofer2007-06-06
| | | | | | | | | | | | | | | Signed-off-by: Matthias Lederhofer <matled@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'gb/idx'Junio C Hamano2007-06-05
|\ \ \ | | | | | | | | | | | | | | | | * gb/idx: Unify write_index_file functions
| * | | Unify write_index_file functionsGeert Bosch2007-06-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch unifies the write_index_file functions in builtin-pack-objects.c and index-pack.c. As the name "index" is overloaded in git, move in the direction of using "idx" and "pack idx" when refering to the pack index. There should be no change in functionality. Signed-off-by: Geert Bosch <bosch@gnat.com> Acked-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | | merge-recursive: refuse to merge binary filesJohannes Schindelin2007-06-04
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Move buffer_is_binary() to xdiff-interface.hJohannes Schindelin2007-06-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We already have two instances where we want to determine if a buffer contains binary data as opposed to text. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | git-fsck: learn about --verboseJohannes Schindelin2007-06-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | With --verbose, it gets really chatty now. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | gitweb: Handle non UTF-8 text betterMartin Koegler2007-06-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gitweb assumes that everything is in UTF-8. If a text contains invalid UTF-8 character sequences, the text must be in a different encoding. This commit introduces $fallback_encoding which would be used as input encoding if gitweb encounters text with is not valid UTF-8. Add basic test for this in t/t9500-gitweb-standalone-no-errors.sh Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Jakub Narebski <jnareb@gmail.com> Tested-by: Alexandre Julliard <julliard@winehq.org> Tested-by: Ismail Dönmez <ismail@pardus.org.tr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Add test-sha1 to .gitignore.Randal L. Schwartz2007-06-03
| |/ / |/| | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | git-apply: what is detected and fixed is not just trailing spaces.Junio C Hamano2007-06-02
| | | | | | | | | | | | | | | | | | | | | But we kept saying "trailing whitespace" all the same. Reword the error messages a bit. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Update to SubmittingPatchesJohannes Schindelin2007-06-02
| | | | | | | | | | | | | | | | | | | | | Make people aware of our testsuite, and of non-ASCII encodings. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Merge branch 'maint' to sync with 1.5.2.1Junio C Hamano2007-06-02
|\ \ \ | | |/ | |/|
| * | GIT 1.5.2.1v1.5.2.1Junio C Hamano2007-06-02
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Release Notes: start preparing for 1.5.3Junio C Hamano2007-06-02
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
| | |
| \ \
*-. \ \ Merge branches 'lh/submodules' and 'pb/am'Junio C Hamano2007-06-02
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lh/submodules: Add basic test-script for git-submodule Add git-submodule command * pb/am: Remove git-applypatch git-applymbox: Remove command
| | * | Remove git-applypatchJunio C Hamano2007-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous one removed git-applymbox, which was the sole user of this tool. Signed-off-by: Junio C Hamano <junkio@cox.net>
| | * | git-applymbox: Remove commandPetr Baudis2007-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I believe noone uses git-applymbox, and noone definitely should, since it is supposed to be completely superseded and everything by its younger cousin git-am. The only known person in the universe to use it was Linus and he declared some time ago that he will try to use git-am instead in his famous dotest script. The trouble is that git-applymbox existence creates confusing UI. I'm a bit like a recycled newbie to the git porcelain and *I* was confused by git-applymbox primitiveness until I've realized a while later that I'm of course using the wrong command. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | | Add basic test-script for git-submoduleLars Hjemli2007-06-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test tries to verify basic sanity of git-submodule, i.e. that it is able to clone and update a submodule repository, that its status output is sane, and that it barfs when the submodule path is occupied during init. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | | Add git-submodule commandLars Hjemli2007-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This command can be used to initialize, update and inspect submodules. It uses a .gitmodules file, readable by git-config, in the top level directory of the 'superproject' to specify a mapping between submodule paths and repository url. Example .gitmodules layout: [module "git"] url = git://git.kernel.org/pub/scm/git/git.git With this entry in .gitmodules (and a commit reference in the index entry for the path "git"), the command 'git submodule init' will clone the repository at kernel.org into the directory "git". Known issues ============ There is currently no way to override the url found in the .gitmodules file, except by manually creating the subproject repository. The place to fix this in the script has a rather long comment about a possible plan. Funny paths will be quoted in the output from git-ls-files, but git-submodule does not attempt to unquote (or even detect the presence of) such paths. Signed-off-by: Lars Hjemli <hjemli@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | | Merge branch 'np/pack'Junio C Hamano2007-06-02
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * np/pack: fix repack with --max-pack-size builtin-pack-object: cache small deltas git-pack-objects: cache small deltas between big objects builtin-pack-objects: don't fail, if delta is not possible
| * | | | fix repack with --max-pack-sizeNicolas Pitre2007-05-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Two issues here: 1) git-repack -a --max-pack-size=10 on the GIT repo dies pretty quick. There is a lot of confusion about deltas that were suposed to be reused from another pack but that get stored undeltified due to pack limit and object size doesn't match entry->size anymore. This test is not really worth the complexity for determining when it is valid so get rid of it. 2) If pack limit is reached, the object buffer is freed, including when it comes from a cached delta data. In practice the object will be stored in a subsequent pack undeltified, but let's make sure no pointer to freed data subsists by clearing entry->delta_data. I also reorganized that code a bit to make it more readable. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | | | builtin-pack-object: cache small deltasMartin Koegler2007-05-29
| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | | | git-pack-objects: cache small deltas between big objectsMartin Koegler2007-05-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Creating deltas between big blobs is a CPU and memory intensive task. In the writing phase, all (not reused) deltas are redone. This patch adds support for caching deltas from the deltifing phase, so that that the writing phase is faster. The caching is limited to small deltas to avoid increasing memory usage very much. The implemented limit is (memory needed to create the delta)/1024. Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Junio C Hamano <junkio@cox.net>