aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* server-info: do not complain if a tag points at a non-commit.Junio C Hamano2005-07-29
| | | | | | Linux 2.6 tree has one of those tree tags. Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Make git-apply --stat less butt-ugly with long filenamesLinus Torvalds2005-07-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When git-apply was printing out long filenames, it used to just truncate them to show the last "max_len" characters of the filename. Which can be really quite ugly (note the two filenames that have just been silently truncated from the beginning - it looks even worse when there are lots of them, like there were in the current v2.6.13-rc4 cris arch update): Documentation/video4linux/README.saa7134 | 9 Documentation/video4linux/bttv/Cards | 74 umentation/video4linux/hauppauge-wintv-cx88-ir.txt | 54 Documentation/video4linux/lifeview.txt | 42 mentation/video4linux/not-in-cx2388x-datasheet.txt | 41 Documentation/w1/w1.generic | 107 With this patch it now looks like so: Documentation/video4linux/README.saa7134 | 9 Documentation/video4linux/bttv/Cards | 74 .../video4linux/hauppauge-wintv-cx88-ir.txt | 54 Documentation/video4linux/lifeview.txt | 42 .../video4linux/not-in-cx2388x-datasheet.txt | 41 Documentation/w1/w1.generic | 107 ie we've made it clear with an ellipsis that we've cut off something from the beginning, and it also tries to do it cleanly at a subdirectory level. Signed-off-by: Linus "good taste" Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] GIT: Listen on IPv6 as well, if available.YOSHIFUJI Hideaki2005-07-27
| | | | | Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Add documentation for git-rename-scriptRyan Anderson2005-07-27
| | | | | Signed-off-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Add support for directories to git-rename-script.Ryan Anderson2005-07-27
| | | | | | | Oh, and in the process, rewrite it in Perl. Signed-off-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Document --strict flag to the fsck-cache command.Junio C Hamano2005-07-27
| | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* git-fsck-cache: be stricter about "tree" objectsLinus Torvalds2005-07-27
| | | | | | | | | | In particular, warn about things like zero-padding of the mode bits, which is a big no-no, since it makes otherwise identical trees have different representations (and thus different SHA1 numbers). Also make the warnings more regular. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* git-convert-cache: fix up mode conversionLinus Torvalds2005-07-27
| | | | | | | | | | | | The old mode conversion was not only complex, it also refused to change the length of a mode, which made it fragile. By moving the mode conversion around a bit, we can not only simplify it, it also ends up being more powerful. Also fix a memory leak that made it impossible to convert huge archives without tons and tons of memory. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* git-fsck-cache.c: check commit objects more carefullyLinus Torvalds2005-07-27
| | | | | | | | | | | | | | We historically used to be very careful in fsck-cache, but when it was re-written to use "parse_object()" instead of parsing everything by hand, it lost a bit of the checks. This, together with the previous commit, should make it do more proper commit object syntax checks. Also add a "--strict" flag, which warns about the old-style "0664" file mode bits, which shouldn't exist in modern trees, but that happened early on in git trees and that the default git-fsck-cache thus silently accepts. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Make "parse_commit()" be a lot more carefulLinus Torvalds2005-07-27
| | | | | | | This was brought on by a bad tree of Thomas Gleixner, where some bogus commit objects weren't warned about properly Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Tutorial typofix.Linus Torvalds2005-07-27
| | | | | Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Typofix: usage strings fix.Junio C Hamano2005-07-27
| | | | | | | The *_usage strings should not start with "usage: ", since the usage() function gives its own. Signed-off-by: Junio C Hamano <junkio@cox.net>
* git-log: make sure we have some commit to start from.Linus Torvalds2005-07-27
| | | | | | | | When no usable head/tag is specified, git log barfed with underlying error message from rev-list, which was not helpful. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* request-pull: minor tweaks.Junio C Hamano2005-07-27
| | | | | | | | | | - use --verify to make sure rev param is a rev, and barf otherwise. - make it always output to stdout; no funny business with tee. - take optional branch head name to specify which branch to summarize. - show baserev in a human readable way. - do not depend on diffstat; use git-apply --stat instead. Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Add git-request-pull-script, a short script that generates a summary ↵Ryan Anderson2005-07-27
| | | | | | | | | of pending changes A short message requesting a pull from the repository is also included. Signed-off-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] git-status-script was missed during the conversion from N -> ARyan Anderson2005-07-27
| | | | | | | | git-status-script was missed during the conversion from "N" to "A" as the new-file marker flag. Signed-off-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"Ryan Anderson2005-07-26
| | | | | | | | | | | | | | | | | This patch includes two fixes to the git-core Debian package: * Conflict with the GNU Interactive Tools package, which _also_ wants to install /usr/bin/git. * Compile against the unencumbered Mozilla SHA1 code, instead of the iffy OpenSSL code, as much as possible. This makes it easier to get the package included for distribution with Debian. This has been based upon the original patch by Sebastian Kuzminsky <seb@highlab.com>, but has been fixed up based upon feedback. Signed-off-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Fix potential send-pack SIGSEGVLinus Torvalds2005-07-26
| | | | | | | | | | | | | The check that the source is ahead of the destination incorrectly expects pop_most_recent_commit() to gracefully handle an empty list. Fix by just checking the list itself, rather than the return value of the pop function. [jc: I did the test script that demonstrated the problem] Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Name it 0.99.2v0.99.2Junio C Hamano2005-07-26
| | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* Adjust diff-raw tests to the status letter change.Junio C Hamano2005-07-26
| | | | | | | | | | | We use 'A' for added files instead of 'N' to make the it visually easier to distinguish from 'M' now. While we are at it, make the test scripts executable. Yes, I know it does not matter because t/Makefile runs them explicitly with "sh tXXXX-blah.sh", but being consistent is always better. Signed-off-by: Junio C Hamano <junkio@cox.net>
* diff-raw: Use 'A' instead of 'N' for added files.Junio C Hamano2005-07-25
| | | | | | | This actually changes the diff-raw status letter from N to A for added files. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Use symbolic constants for diff-raw status indicators.Junio C Hamano2005-07-25
| | | | | | | | | Both Cogito and StGIT prefer to see 'A' for new files. The current 'N' is visually harder to distinguish from 'M', which is used for modified files. Prepare the internals to use symbolic constants to make the change easier. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Documentation: describe git-ls-files --exclude patterns.Junio C Hamano2005-07-25
| | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* git-ls-files: --exclude mechanism updates.Junio C Hamano2005-07-25
| | | | | | | | | | | | Add --exclude-per-directory=<name> option that specifies a file to contain exclude patterns local to that directory and its subdirectories. Update the exclusion logic to be able to say "include files that match this more specific pattern, even though later exclude patterns may match them". Also enhances that a pattern can contain '/' in which case fnmatch is called with FNM_PATHNAME flag to match the entire path. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Update the documentation for git-tag-script to reflect current behavior.Ryan Anderson2005-07-25
| | | | | | | [jc: I updated Ryan's patch to mention -a to create an unsigned tag.] Signed-off-by: Ryan Anderson <ryan@michonline.com>
* git-tag-script updates.Junio C Hamano2005-07-25
| | | | | | | | | | | | | | | | | | | | This adds -a (annotate only but not sign) option "A Large Angry SCM" <gitzilla@gmail.com> sent to the list, after fixing up the whitespace corruption in the patch, with some of my own fixes. Namely: * A new flag '-a' can be used to create an unsigned tag object; * The '-f' flag logic did not do the right thing; * When creating a signed tag, we did not check for GPG failure as we should; * Try to use the key for the tagger identity when signing the tag. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Fix up applymbox script for the addition of "git-" prefixLinus Torvalds2005-07-23
| | | | Ehh, it works much better that way ;)
* [PATCH] diffcore-pickaxe: switch to "counting" behaviour.Junio C Hamano2005-07-23
| | | | | | | | | | | | | Instead of finding old/new pair that one side has and the other side does not have the specified string, find old/new pair that contains the specified string as a substring different number of times. This would still not catch a case where you introduce two static variable declarations and remove two static function definitions from a file with -S"static", but would make it behave a bit more intuitively. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Add a "git rename" to help with - surprise surprise - renamesLinus Torvalds2005-07-23
| | | | | | | | | | | | | | | | It's stupid. We'd want to rename directories too, but this doesn't do that yet - easy enough to do per se, we just need to carefully list all the pathnames that got moved (and remember to ignore the files that weren't tracked but are in the subdirectory that got moved). Doing the directory case will require a bit more scripting.. Something like oldfiles=($(git-ls-files | grep '^$src')) newfiles=($(git-ls-files | sed ':^$src: s:^$src:$dst:')) mv $src $dst && git-update-cache --add --remove -- "${oldfiles[@]}" "${newfiles[@]}" might do it, except it needs to be done right, and carefully. Methinks perl is probably better at this. Hint hint..
* Rename the "tools" programs to also have the "git-" prefixLinus Torvalds2005-07-23
| | | | | | Hey, people are using them, and we have an install target for them, so make sure that we can actually install them sanely without disturbing the namespace.
* [PATCH] Support cloning packed repo from dumb http servers.Junio C Hamano2005-07-23
| | | | | | | | | Using the information prepared with update-server-info, a truly dumb http server can allow cloning with this client side support. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Document update-server-info.Junio C Hamano2005-07-23
| | | | | | | This adds a minimum documentation to the new command. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Add update-server-info.Junio C Hamano2005-07-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The git-update-server-info command prepares informational files to help clients discover the contents of a repository, and pull from it via a dumb transport protocols. Currently, the following files are produced. - The $repo/info/refs file lists the name of heads and tags available in the $repo/refs/ directory, along with their SHA1. This can be used by git-ls-remote command running on the client side. - The $repo/info/rev-cache file describes the commit ancestry reachable from references in the $repo/refs/ directory. This file is in an append-only binary format to make the server side friendly to rsync mirroring scheme, and can be read by git-show-rev-cache command. - The $repo/objects/info/pack file lists the name of the packs available, the interdependencies among them, and the head commits and tags contained in them. Along with the other two files, this is designed to help clients to make smart pull decisions. The git-receive-pack command is changed to invoke it at the end, so just after a push to a public repository finishes via "git push", the server info is automatically updated. In addition, building of the rev-cache file can be done by a standalone git-build-rev-cache command separately. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] git-ls-remote: show and optionally store remote refs.Junio C Hamano2005-07-23
| | | | | | | | | | | | | Retrieve and list the remote refs from git, http, and rsync repositories, and optionally stores the retrieved refs in the local repository under the same name. To access a git URL, git-peek-remote command is used. An http URL needs to have an up-to-date info/refs file for discovery, which will be introduced by a later update-server-info patch. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Documentation: git-peek-remote.Junio C Hamano2005-07-23
| | | | | | | | Add documentation for the git-peek-remote and link it from the main index. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] git-peek-remote: show tags and heads from a remote repository.Junio C Hamano2005-07-23
| | | | | | | | | | | | Add a git-peek-remote command that talks with upload-pack the same way git-fetch-pack and git-clone-pack do, to show the references the remote side has on the standard output. A later patch introduces git-ls-remote that implements a UI to store tag values retrieved using this command. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Update tutorial.txt branches/tags to use the nicer helper syntaxLinus Torvalds2005-07-23
| | | | | | Teach people to use "git tag <tag-name>" instead of writing the current HEAD by hand into the .git/refs/tags/<tag-name> file. Most people probably don't really want to know about how git does things internally.
* Make "git tag" create both simple and signed tagsLinus Torvalds2005-07-23
| | | | | | | | | | | | A simple tag is just a direct pointer to the object, while a signed tag is a pointer to a "tag object" that has a pgp signature and points to the object we tagged. Use "git tag -s tagname" to create a signed tag. The "-f" flag overwrites any previous tag of that name (useful if you update a tag to point to a newer version for things like "latest" etc tags that aren't necessarily static versions).
* [PATCH] mailinfo: handle folded header.Junio C Hamano2005-07-23
| | | | | | | | | | | | | | Some people split their long E-mail address over two lines using the RFC2822 header "folding". We can lose authorship information this way, so make a minimum effort to deal with it, instead of special casing only the "Subject:" field. We could teach mailsplit to unfold the folded header, but teaching mailinfo about folding would make more sense; a single message can be fed to mailinfo without going through mailsplit. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Fix git protocol connection 'port' overrideLinus Torvalds2005-07-23
| | | | | It was broken by the IPv6 patches - we need to remove the ":" part from the hostname for a successful name lookup.
* [PATCH] GIT: Try all addresses for given remote nameYOSHIFUJI Hideaki2005-07-23
| | | | | | | | | Try all addresses for given remote name until it succeeds. Also supports IPv6. Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Deb packaging needs two more configuration filesRyan Anderson2005-07-23
| | | | | | | | | | | | | | | | | | | | | | | | | | The deb package building needs these two new files to work correctly. debian/compat sets the rules under which the debhelper scripts (dh_*) operate. debian/git-core.install tells dh_install what files to install in each package that is generated. There is only one package being generated, so all files go into it. (I missed these in the last patch, mostly because I needed to do this to find stuff I had missed: find . -name .git -type d -prune -o -type f -print \ | grep -v -e .tree1 -e .tree2 \ | sed -e "s/^\.\///" \ | sort >.tree1 git-ls-files | grep -v -e .tree1 -e .tree2 \ | sort >.tree2 diff -u .tree1 .tree2 ) Signed-off-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Deb packages should include the binariesRyan Anderson2005-07-23
| | | | | | | | | | | | | | | | The Deb packages were missing a dependency on "build install" from the binary target - this fixes that, and cleans up some inconsistencies elsewhere in the rulesets. Traditionally, Debian packaging uses a file called "build-stamp" (or "install-stamp", etc) in the main source tree. The initial deb package support for Git tried to move this "build-stamp" file into the debian/ directory, but some instances were missed. That problem, however, was incidental - the real fix is the missing dependency mentioned above. Signed-off-by: Ryan Anderson <ryan@michonline.com> Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Be more aggressive about marking trees uninterestingLinus Torvalds2005-07-23
| | | | | | | | | | | | | | | | | | | | | We'll mark all the trees at the edges (as deep as we had to go to realize that we have all the commits needed) as uninteresting. Otherwise we'll occasionally list a lot of objects that were actually available at the edge in a commit that we just never ended up parsing because we could determine early that we had all relevant commits. NOTE! The object listing is still just a _heuristic_. It's guaranteed to list a superset of the actual new objects, but there might be the occasional old object in the list, just because the commit that referenced it was much further back in the history. For example, let's say that a recent commit is a revert of part of the tree to much older state: since we didn't walk _that_ far back in the commit history tree to list the commits necessary, git-rev-tree will never have marked the old objects uninteresting, and we'll end up listing them as "new". That's ok.
* [PATCH] tutorial: mention "git clone" records .git/branches/originJunio C Hamano2005-07-22
| | | | | | | | | | Update the recommended workflow for individual developers. While they are tracking the origin, refs/heads/origin is updated by "git fetch", so there is no need to manually copy FETCH_HEAD to refs/heads/ anywhere. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] git-clone-script: store where we cloned from in .git/branches/originJunio C Hamano2005-07-22
| | | | | | | | A bit more usability enhancement, while retaining Cogito compatibility (and fixing the "-u" flag). Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Test framework: prettyprint the failed command.Junio C Hamano2005-07-22
| | | | | | | | | | The output from a failure case had the test description message and the first line of the actual test script concatenated on the same line, which was ugly. Correct the output routine a bit to make it more readable. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Install tools with "make install-tools".Junio C Hamano2005-07-22
| | | | | | | | | Match the main Makefile by separating COPTS from CFLAGS, defining INSTALL, prefix, and bin. Add a new target 'install-tools' to the main Makefile to install them. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Audit rev-parse users.Junio C Hamano2005-07-22
| | | | | | | | This patch changes rev-parse users that pass a single argument that is supposed to be a rev parameter to use "--verify". Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] git-branch: avoid getting confused by empty or nonexisting branches.Junio C Hamano2005-07-22
| | | | | | | | | | When not specifying the start point explicitly, we ended up emitting ^0 in addition to the default HEAD. Be careful to see if we have "$2" before finding out which commit to base the new branch on. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Junio C Hamano <junkio@cox.net>