aboutsummaryrefslogtreecommitdiff
path: root/Makefile
Commit message (Collapse)AuthorAge
* Give proper prototype to gitstrcasestr.Junio C Hamano2005-10-08
| | | | | | | Borrow from NO_MMAP patch by Johannes, squelch compiler warnings by declaring gitstrcasestr() when we use it. Signed-off-by: Junio C Hamano <junkio@cox.net>
* GIT 0.99.8v0.99.8Junio C Hamano2005-10-02
| | | | | | | | GIT already did everything I wanted it to do since mid 0.99.7, and it has almost everything I want it to have now, except a couple of minor tweaks and enhancements. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Customize git command for installations that lack certain commands.Junio C Hamano2005-10-02
| | | | | | | | | When the platform lacks certain git subcommands, omit them from the list of subcommands that are available from "git" wrapper. Noticed by Geert Bosch. Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] git on OpenBSDHan Boetes2005-10-02
| | | | | | iconv is installed in /usr/local. Signed-off-by: Junio C Hamano <junkio@cox.net>
* More portability.Junio C Hamano2005-10-01
| | | | | | | | | | | - The location of openssl development files got customizable. - The location of iconv development files got customizable. - Pass $TAR down to t5000 test so that the user can override with 'gmake TAR=gtar'. - Solaris 'bc' does not seem to grok "define abs()". There is no reason to use bc there -- expr would do. Signed-off-by: Junio C Hamano <junio@twinsun.com>
* Add git-symbolic-refJunio C Hamano2005-10-01
| | | | | | | | | | | | | This adds the counterpart of git-update-ref that lets you read and create "symbolic refs". By default it uses a symbolic link to represent ".git/HEAD -> refs/heads/master", but it can be compiled to use the textfile symbolic ref. The places that did 'readlink .git/HEAD' and 'ln -s refs/heads/blah .git/HEAD' have been converted to use new git-symbolic-ref command, so that they can deal with either implementation. Signed-off-by: Junio C Hamano <junio@twinsun.com>
* Still installing the old command names.Junio C Hamano2005-09-30
| | | | | | | | | | | | | After seeing Jeff's guide, I changed my mind about the big-rename transition plan. Even if Porcelains are kept up to date, those web documents that describes older world order would live longer and people will stumble across them via google searches. And who knows how many mirrored copies there are. The backward compatible symbolic links *will* be removed before 1.0. But that will not happen in 0.99.8. Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Make the test more shell generic and fix missing Solaris find optionPeter Eriksen2005-09-27
| | | | | | This is from Peter Eriksen, but further fixed. Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Add "git-update-ref" to update the HEAD (or other) refLinus Torvalds2005-09-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a careful version of the script stuff that currently just blindly writes HEAD with a new value. You can use git-update-ref HEAD <newhead> or git-update-ref HEAD <newhead> <oldhead> where the latter version verifies that the old value of HEAD matches oldhead. It basically allows a "ref" file to be a symbolic pointer to another ref file by starting with the four-byte header sequence of "ref:". More importantly, it allows the update of a ref file to follow these symbolic pointers, whether they are symlinks or these "regular file symbolic refs". NOTE! It follows _real_ symlinks only if they start with "refs/": otherwise it will just try to read them and update them as a regular file (ie it will allow the filesystem to follow them, but will overwrite such a symlink to somewhere else with a regular filename). In general, using git-update-ref HEAD "$head" should be a _lot_ safer than doing echo "$head" > "$GIT_DIR/HEAD" both from a symlink following standpoint _and_ an error checking standpoint. The "refs/" rule for symlinks means that symlinks that point to "outside" the tree are safe: they'll be followed for reading but not for writing (so we'll never write through a ref symlink to some other tree, if you have copied a whole archive by creating a symlink tree). Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Clean generated files a bit more.Junio C Hamano2005-09-24
| | | | | | | | Now we conditionally compile things in compat/, so we should remove object files there. Python execution can leave *.pyc and *.pyo, which need to be cleaned as well. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Stop installing the backward compatible symlinks.Junio C Hamano2005-09-24
| | | | | | | | | | Also cmd-renames.sh can now be used to remove the backward compatible symlinks -- this is not used by default in any way. As discussed on the list with Pasky, git-ssh-push and git-ssh-pull will keep calling each other for a while longer. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Use 0.99.7.GIT as version between 0.99.7 and 0.99.8Junio C Hamano2005-09-24
| | | | | | | Pasky taught me how he does his versioning for ELinks. This will sort after 0.99.7 and interim fixes 0.99.7a, and before 0.99.8. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Solaris: give a bit more built-in defaults.Junio C Hamano2005-09-24
| | | | | | | Taking the make command line Peter Eriksen uses, give defaults to SHELL_PATH, TAR, CURLDIR, NO_STRCASESTR, and INSTALL. Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] CURLDIR in MakefilePatrick Mauritz2005-09-24
| | | | | | | | Support systems that do not install curl headers and libraries in /usr/{include,lib}. Signed-off-by: Patrick Mauritz <oxygene@studentenbude.ath.cx> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Prettyprint octopus merge message.Junio C Hamano2005-09-22
| | | | | | | | Including the current branch in the list of heads being merged was not a good idea, so drop it. And shorten the message by grouping branches and tags together to form a single line. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Retire diff-helper.Junio C Hamano2005-09-22
| | | | | | | The textual diff generation with built-in '-p' in diff-* brothers has proven to be useful enough that git-diff-helper outlived its usefulness. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Retire rev-tree.Junio C Hamano2005-09-22
| | | | | | | | Some old scripts might still use git-rev-tree, but it really is clearly inferior in every way to git-rev-list that such scripts should be fixed anyway. Fixing them should be pretty easy. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Retire git-export.Junio C Hamano2005-09-22
| | | | | | | | | | | | git-export was done as a concept example on how easy it is to export the git data to something else. It's much less powerful than any number of trivial one-liner scripts now, and real exporters would not ever use git-export. It's obviously much less powerful than "git-whatchanged", or just about any combination of git-rev-list + git-diff-tree. Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] ARM optimized SHA1 implementationNicolas Pitre2005-09-20
| | | | | | | | | | | | | | | | | | | This is my ARM assembly SHA1 implementation for GIT. It is approximately 50% faster than the generic C version. On an XScale processor running at 400MHz: generic C version: 9.8 MB/s my version: 14.5 MB/s It's not that I expect a lot of big GIT users on ARM, but I stillknow about one important ARM user that might benefit from it, and writing that code was fun. I also reworked the makefile a bit so any optimized SHA1 implementations is used regardless of whether NO_OPENSSL is defined or not. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Ship our own copy of subprocess.pyJunio C Hamano2005-09-19
| | | | | | so people without the latest Python could run merge-recursive. Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] strcasestr compatibility replacementLinus Torvalds2005-09-19
| | | | | | | | | | Some C libraries lack strcasestr(); add a stupid replacement to help folks with such. [jc: original Linus posting, updated with his "also need <ctype.h>", updated further with a fix from Joachim B Haga <cjhaga@fys.uio.no>"] Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'master' of .Junio C Hamano2005-09-18
|\
| * [PATCH] getdomainname should be usable on SunOS with -lnslJunio C Hamano2005-09-17
| | | | | | | | | | | | | | Jason Riedy suggests that we should be able to use getdomainname if we properly specify which libraries to link. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Be more backward compatible with git-ssh-{push,pull}.Junio C Hamano2005-09-15
| | | | | | | | | | | | | | | | HPA reminded me that these programs knows about the name of the counterpart on the other end and simply symlinking the old name to new name locally would not be enough. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Retire info/rev-cacheJunio C Hamano2005-09-15
| | | | | | | | | | | | | | It was one of those things that were well intentioned but did not turn out to be useful in practice. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * [PATCH] Use '-d' as the first flag to 'install'Peter Eriksen2005-09-15
| | | | | | | | | | | | | | | | | | ... in order to please Solaris 'install'. GNU install is not harmed with this. [jc: Documentation/Makefile also fixed.] Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'master' of . Junio C Hamano2005-09-13
|\ \ | |/
| * [PATCH] Rename the 'fredrik' merge strategy to 'recursive'.Fredrik Kuivinen2005-09-13
| | | | | | | | | | | | | | | | Otherwise we would regret when Fredrik comes up with another merge algorithm with different pros-and-cons with the current one. Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'master' of . Junio C Hamano2005-09-12
|\ \ | |/
| * [PATCH] Add "git grep" helperLinus Torvalds2005-09-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Very convenient shorthand for git-ls-files [file-patterns] | xargs grep <pattern> which I tend to do all the time. Yes, it's trivial, but it's really nice. I can do git grep '\<some_variable\>' arch/i386 include/asm-i386 and it does exactly what you'd think it does. And since it just uses the normal git-ls-files file patterns, you can do things like git grep something 'include/*.h' and it will search all header files under the include/ subdirectory. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Prepare 0.99.7 release candidate branch.Junio C Hamano2005-09-10
|/ | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* Add a new merge strategy by Fredrik Kuivinen.Junio C Hamano2005-09-10
| | | | | | | | | | | I really wanted to try this out, instead of asking for an adjustment to the 'git merge' driver and waiting. For now the new strategy is called 'fredrik' and not in the list of default strategies to be tried. The script wants Python 2.4 so this commit also adjusts Debian and RPM build procecure files. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Use Daniel's read-tree in the merge strategy 'resolve'.Junio C Hamano2005-09-10
| | | | | | And rename the one Linus kept calling stupid, 'stupid'. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Multi-backend merge driver.Junio C Hamano2005-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new command 'git merge' takes the current head and one or more remote heads, with the commit log message for the automated case. If the heads being merged are simple fast-forwards, it acts the same way as the current 'git resolve'. Otherwise, it tries different merge strategies and takes the result from the one that succeeded auto-merging, if there is any. If no merge strategy succeeds auto-merging, their results are evaluated for number of paths needed for hand resolving, and the one with the least number of such paths is left in the working tree. The user is asked to resolve them by hand and make a commit manually. The calling convention from the 'git merge' driver to merge strategy programs is very simple: - A strategy program is to be called 'git-merge-<strategy>'. - They take input of this form: <common1> <common2> ... '--' <head> <remote1> <remote2>... That is, one or more the common ancestors, double dash, the current head, and one or more remote heads being merged into the current branch. - Before a strategy program is called, the working tree is matched to the current <head>. - The strategy program exits with status code 0 when it successfully auto-merges the given heads. It should do update-cache for all the merged paths when it does so -- the index file will be used to record the merge result as a commit by the driver. - The strategy program exits with status code 1 when it leaves conflicts behind. It should do update-cache for all the merged paths that it successfully auto-merged, and leave the cache entry in the index file as the same as <head> for paths it could not auto-merge, and leave its best-effort result with conflict markers in the working tree when it does so. - The strategy program exists with status code other than 0 or 1 if it does not handle the given merge at all. As examples, this commit comes with merge strategies based on 'git resolve' and 'git octopus'. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Retire support for old environment variables.Junio C Hamano2005-09-09
| | | | | | | | | | We have deprecated the old environment variable names for quite a while and now it's time to remove them. Gone are: SHA1_FILE_DIRECTORIES AUTHOR_DATE AUTHOR_EMAIL AUTHOR_NAME COMMIT_AUTHOR_EMAIL COMMIT_AUTHOR_NAME SHA1_FILE_DIRECTORY Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] remove duplicate git-send-email-script.perl target in MakefileMarco Roeland2005-09-09
| | | | | | | | | | | Remove duplicate git-send-email-perl target in Makefile. When WITH_SEND_EMAIL was defined, as in the Debian 'deb' target, git-send-email-perl was added twice to SCRIPT_PERL, leading to a duplicate definition in the Makefile. Creating a ".deb" then failed. Signed-off-by: Marco Roeland <marco.roeland@xs4all.nl> Signed-off-by: Junio C Hamano <junkio@cox.net>
* 'build' scripts before installing.Junio C Hamano2005-09-08
| | | | | | | | | | | | | Earlier we renamed git-foo.sh to git-foo while installing, which was mostly done by inertia than anything else. This however made writing tests to use scripts harder. This patch builds the scripts the same way as we build binaries from their sources. As a side effect, you can now specify non-standard paths you have your Perl binary is in when running the make. Signed-off-by: Junio C Hamano <junkio@cox.net>
* git --version tells which version of git you have.Junio C Hamano2005-09-07
| | | | | | | Originally from Martin Atukunda <matlads@dsmagic.com> but adjusted for post-rename code. Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Portability fix for Solaris 10/x86Patrick Mauritz2005-09-07
| | | | | | | | | | | | | * getdomainname unavailable there. * needs -lsocket for linkage. * needs __EXTENSIONS__ at the beginning of convert-objects.c [JC: I've done this slightly differently from what Patrick originally sent to the list and dropped the bit that deals with installations that has curl header and library at non-default location. I am resisting the slipperly slope called autoconf.] Signed-off-by: Junio C Hamano <junkio@cox.net>
* Big tool rename.Junio C Hamano2005-09-07
| | | | | | | | | | | | | | | | | | | As promised, this is the "big tool rename" patch. The primary differences since 0.99.6 are: (1) git-*-script are no more. The commands installed do not have any such suffix so users do not have to remember if something is implemented as a shell script or not. (2) Many command names with 'cache' in them are renamed with 'index' if that is what they mean. There are backward compatibility symblic links so that you and Porcelains can keep using the old names, but the backward compatibility support is expected to be removed in the near future. Signed-off-by: Junio C Hamano <junkio@cox.net>
* GIT 0.99.6v0.99.6Junio C Hamano2005-09-07
|\
| * Merge branch 'master' of . Junio C Hamano2005-09-05
| |\
| * \ Merge refs/heads/master from . Junio C Hamano2005-08-29
| |\ \
| * \ \ Merge master branch changes into release candidate branch.Junio C Hamano2005-08-26
| |\ \ \ | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | | | Prepare 0.99.6 branch.Junio C Hamano2005-08-24
| | | | |
* | | | | Flatten tools/ directory to make build procedure simpler.Junio C Hamano2005-09-07
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also make platform specific part more isolated. Currently we only have Darwin defined, but I've taken a look at SunOS specific patch (which I dropped on the floor for now) as well. Doing things this way would make adding it easier. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | | Retire git-clone-dumb-http.Junio C Hamano2005-09-05
| | | | | | | | | | | | | | | | | | | | | | | | ... and fold it into git-clone-script. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | | Install archimport-script.Junio C Hamano2005-09-04
| |_|/ |/| | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Remove git-apply-patch-script.Junio C Hamano2005-08-29
| | | | | | | | | | | | | | | | | | | | | | | | Now the rebase is rewritten to use git cherry-pick, there is no user for that ancient script. I've checked Cogito and StGIT to make sure they do not use it. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | Redo "revert" using three-way merge machinery.Junio C Hamano2005-08-29
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The reverse patch application using "git apply" sometimes is too rigid. Since the user would get used to resolving conflicting merges by hand during the normal merge experience, using the same machinery would be more helpful rather than just giving up. Cherry-picking and reverting are essentially the same operation. You pick one commit, and apply the difference that commit introduces to its own commit ancestry chain to the current tree. Revert applies the diff in reverse while cherry-pick applies it forward. They share the same logic, just different messages and merge direction. Rewrite "git rebase" using "git cherry-pick". Signed-off-by: Junio C Hamano <junkio@cox.net>