aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* install-sh from automake does not like -m without delimiting spaceRobert Schiele2007-12-03
| | | | | | | | | | The install-sh script as shipped with automake requires a space between the -m switch and its argument. Since this is also the regular way of doing it with other install implementations this change inserts the missing space in all makefiles. Signed-off-by: Robert Schiele <rschiele@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Documentation: add a new man page for "git-help"Christian Couder2007-12-03
| | | | | Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* git-commit documentation: fix unfinished sentence.Junio C Hamano2007-12-03
| | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* git-commit --allow-emptyJunio C Hamano2007-12-03
| | | | | | | | | | | | | | It does not usually make sense to record a commit that has the exact same tree as its sole parent commit and that is why git-commit prevents you from making such a mistake, but when data from foreign scm is involved, it is a different story. We are equipped to represent such an (perhaps insane, perhaps by mistake, or perhaps done on purpose) empty change, and it is better to represent it bypassing the safety valve for native use. This is primarily for use by foreign scm interface scripts. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* git-commit: Allow to amend a merge commit that does not change the treeJohannes Sixt2007-12-03
| | | | | | | | | | | | | | | Normally, it should not be allowed to generate an empty commit. A merge commit generated with git 'merge -s ours' does not change the tree (along the first parent), but merges are not "empty" even if they do not change the tree. Hence, commit 8588452ceb7 allowed to amend a merge commit that does not change the tree, but 4fb5fd5d301 disallowed it again in an attempt to avoid that an existing commit is amended such that it becomes empty. With this change, a commit can be edited (create a new one or amend an existing one) either if there are changes or if there are at least two parents. Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Merge branch 'js/prune-expire'Junio C Hamano2007-12-02
|\ | | | | | | | | * js/prune-expire: Add "--expire <time>" option to 'git prune'
| * Add "--expire <time>" option to 'git prune'Johannes Schindelin2007-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Earlier, 'git prune' would prune all loose unreachable objects. This could be quite dangerous, as the objects could be used in an ongoing operation. This patch adds a mode to expire only loose, unreachable objects which are older than a certain time. For example, by git prune --expire 14.days you can prune only those objects which are loose, unreachable and older than 14 days (and thus probably outdated). The implementation uses st.st_mtime rather than st.st_ctime, because it can be tested better, using 'touch -d <time>' (and omitting the test when the platform does not support that command line switch). Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | Merge branch 'js/export-with-assignment'Junio C Hamano2007-12-02
|\ \ | | | | | | | | | | | | * js/export-with-assignment: Replace instances of export VAR=VAL with VAR=VAL; export VAR
| * | Replace instances of export VAR=VAL with VAR=VAL; export VARJohannes Schindelin2007-11-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | It might be POSIX, but there are shells that do not like the expression 'export VAR=VAL'. To be on the safe side, rewrite them into 'VAR=VAL' and 'export VAR'. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'js/fast-export'Junio C Hamano2007-12-02
|\ \ \ | | | | | | | | | | | | | | | | * js/fast-export: Add 'git fast-export', the sister of 'git fast-import'
| * | | Add 'git fast-export', the sister of 'git fast-import'Johannes Schindelin2007-12-02
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This program dumps (parts of) a git repository in the format that fast-import understands. For clarity's sake, it does not use the 'inline' method of specifying blobs in the commits, but builds the blobs before building the commits. Since signed tags' signatures will not necessarily be valid (think transformations after the export, or excluding revisions, changing the history), there are 4 modes to handle them: abort (default), ignore, warn and strip. The latter just turns the tags into unsigned ones. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'js/rebase-i-rerere'Junio C Hamano2007-12-02
|\ \ \ | | | | | | | | | | | | | | | | * js/rebase-i-rerere: rebase -i: give rerere a chance
| * | | rebase -i: give rerere a chanceJohannes Schindelin2007-11-28
| |/ / | | | | | | | | | | | | | | | | | | | | | Like non-interactive rebase, interactive mode now calls rerere when appropriate. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'js/pull-rebase'Junio C Hamano2007-12-02
|\ \ \ | | | | | | | | | | | | | | | | * js/pull-rebase: Teach 'git pull' about --rebase
| * | | Teach 'git pull' about --rebaseJohannes Schindelin2007-11-28
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When calling 'git pull' with the '--rebase' option, it performs a fetch + rebase instead of a fetch + merge. This behavior is more desirable than fetch + pull when a topic branch is ready to be submitted and needs to be update. fetch + rebase might also be considered a better workflow with shared repositories in any case, or for contributors to a centrally managed repository, such as WINE's. As a convenience, you can set the default behavior for a branch by defining the config variable branch.<name>.rebase, which is interpreted as a bool. This setting can be overridden on the command line by --rebase and --no-rebase. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'wc/rebase-insn'Junio C Hamano2007-12-02
|\ \ \ | | | | | | | | | | | | | | | | | | | | * wc/rebase-insn: Mention that git-rm can be an appropriate resolution as well as git-add. revert/cherry-pick: Allow overriding the help text by the calling Porcelain
| * | | Mention that git-rm can be an appropriate resolution as well as git-add.David Symonds2007-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Especially when using git-cherry-pick, removing files that are unmerged can be a logical action. This patch merely changes the informative text to be less confusing. Signed-off-by: David Symonds <dsymonds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | revert/cherry-pick: Allow overriding the help text by the calling PorcelainWincent Colaiuta2007-11-30
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A Porcelain command that uses cherry-pick or revert may make a commit out of resolved index itself, in which case telling the user to commit the result is not appropriate at all. This allows GIT_CHERRY_PICK_HELP environment variable to be set by the calling Porcelain in order to override the built-in help text. [jc: this is heavily modified from the original but should be equivalent in spirit] Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | Merge branch 'jc/typebreak'Junio C Hamano2007-12-02
|\ \ \ | | | | | | | | | | | | | | | | | | | | * jc/typebreak: Enable rewrite as well as rename detection in git-status rename: Break filepairs with different types.
| * | | Enable rewrite as well as rename detection in git-statusJeff King2007-12-02
| | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | rename: Break filepairs with different types.Junio C Hamano2007-12-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we consider if a path has been totally rewritten, we did not touch changes from symlinks to files or vice versa. But a change that modifies even the type of a blob surely should count as a complete rewrite. While we are at it, modernise diffcore-break to be aware of gitlinks (we do not want to touch them). Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'jc/color'Junio C Hamano2007-12-02
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | * jc/color: git-config --get-color: get configured color "color.diff = true" is not "always" anymore.
| * | | | git-config --get-color: get configured colorJunio C Hamano2007-11-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This new option allows scripts to grab color setting from the user configuration, translated to ANSI color escape sequence. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | "color.diff = true" is not "always" anymore.Junio C Hamano2007-11-28
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Too many people got burned by setting color.diff and color.status to true when they really should have set it to "auto". This makes only "always" to do the unconditional colorization, and change the meaning of "true" to the same as "auto": colorize only when we are talking to a terminal. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'dc/gitweb'Junio C Hamano2007-12-02
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | * dc/gitweb: gitweb: the commitdiff is very commonly used, it's needed on search page, too
| * | | | gitweb: the commitdiff is very commonly used, it's needed on search page, tooDenis Cheng2007-12-02
| | |/ / | |/| | | | | | | | | | | | | | Acked-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | gitweb: Update and improve gitweb/README fileJakub Narebski2007-12-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update list of build configuration variables, add references to gitweb/INSTALL, add description of runtime and per-repository runtime configuration. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | git-stash: Display help message if git-stash is run with wrong sub-commandsKevin Leung2007-12-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current git-stash behaviour is very error prone to typos. For example, if you typed "git-stash llist", git-stash would think that you wanted to save to a stash named "llist", but in fact, you meant "git-stash list". Signed-off-by: Kevin Leung <kevinlsk@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | git-am: catch missing author date early.Junio C Hamano2007-12-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even though commit-tree would default to the current time if the incoming e-mail message somehow did not record the timestamp, it is safer to catch the breakage sooner. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'maint'Junio C Hamano2007-12-02
|\ \ \ \ | |/ / / |/| | | | | | | | | | | * maint: t9600: test cvsimport from CVS working tree
| * | | t9600: test cvsimport from CVS working treeJeff King2007-12-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This test passes with v1.5.3.7, but not with v1.5.3.6. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Update draft release notes for 1.5.4Junio C Hamano2007-12-01
| | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Consolidate command list to one.Junio C Hamano2007-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The categorized list of commands in git(7) and the list of common commands in "git help" output were maintained separately, which was insane. This consolidates them to a single command-list.txt file. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Resurrect peek-remoteJunio C Hamano2007-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8951d7c1f1ae38f34617b6c2490bf65e73e371f7 (Build in ls-remote) made peek-remote as a synonym to ls-remote by enhancing the latter, but at the same time actually _removed_ it, before we officially gave removal notice. This was bad. Resurrect it for v1.5.4. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | Merge branch 'tt/help'Junio C Hamano2007-12-01
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | * tt/help: Remove hint to use "git help -a" Make the list of common commands more exclusive
| * | | | Remove hint to use "git help -a"Theodore Ts'o2007-11-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The newbie user will run away screaming when they see all possible commands. The expert user will already know about the -a option from reading the git man page. Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | Make the list of common commands more exclusiveTheodore Ts'o2007-11-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove apply, archive, cherry-pick, prune, revert, and show-branch, so "git help" is less intimidating. Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | Merge branch 'jc/move-gitk'Junio C Hamano2007-12-01
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * jc/move-gitk: Move gitk to its own subdirectory
| * | | | | Move gitk to its own subdirectoryJunio C Hamano2007-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is to prepare for gitk i18n effort that makes gitk not a single file project anymore. We may use subproject to bind git.git and gitk.git more loosely in the future, but we do not want to require everybody to have subproject aware git to be able to pull from git.git yet. Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | Merge branch 'jc/branch-contains'Junio C Hamano2007-12-01
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * jc/branch-contains: git-branch --contains: doc and test git-branch --contains=commit parse-options: Allow to hide options from the default usage.
| * | | | | | git-branch --contains: doc and testJunio C Hamano2007-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | | | git-branch --contains=commitJunio C Hamano2007-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This teaches git-branch to limit its listing to branches that are descendants to the named commit. When you are using many topic branches, you often would want to see which branch already includes a commit, so that you know which can and cannot be rewound without disrupting other people. One thing that sometimes happens to me is: * Somebody sends a patch that is a good maint material. I apply it to 'maint': $ git checkout maint $ git am -3 -s obvious-fix.patch * Then somebody else sends another patch that is possibly a good maint material, but I'd want to cook it in 'next' to be extra sure. I fork a topic from 'maint' and apply the patch: $ git checkout -b xx/maint-fix-foo $ git am -3 -s ,xx-maint-fix-foo.patch * A minor typo is found in the "obvious-fix.patch". The above happens without pushing the results out, so I can freely recover from it by amending 'maint', as long as I do not forget to rebase the topics that were forked previously. With this patch, I can do this to find out which topic branches already contain the faulty commit: $ git branch --contains=maint^ xx/maint-fix-foo so I can rebase the xx/maint-fix-foo branch before merging it to 'next'. Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | | | parse-options: Allow to hide options from the default usage.Pierre Habouzit2007-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is useful for backward-compatibility aliases, or very advanced command line switches introduced for internal git usages and have no real use for a user. parse-options still shows them if the user asks for --help-all. Signed-off-by: Pierre Habouzit <madcoder@debian.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | | Merge branch 'cr/tag-options'Junio C Hamano2007-12-01
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * cr/tag-options: git-tag: test that -s implies an annotated tag "git-tag -s" should create a signed annotated tag builtin-tag: accept and process multiple -m just like git-commit Make builtin-tag.c use parse_options.
| * | | | | | | git-tag: test that -s implies an annotated tagJeff King2007-11-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This detects a regression introduced while moving git-tag to a C builtin. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | | | | "git-tag -s" should create a signed annotated tagJunio C Hamano2007-11-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The earlier patch 396865859918e9c7bf8ce74aae137c57da134610 (Make builtin-tag.c use parse_options.) broke "git-tag -s". Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | | | | builtin-tag: accept and process multiple -m just like git-commitJunio C Hamano2007-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | | | | Make builtin-tag.c use parse_options.Carlos Rica2007-11-18
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also, this removes those tests ensuring that repeated -m options don't allocate memory more than once, because now this is done after parsing options, using the last one when more are given. The same for -F. Signed-off-by: Carlos Rica <jasampler@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | | Update draft release notes for 1.5.4Junio C Hamano2007-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | | Merge 1.5.3.7 inJunio C Hamano2007-12-01
|\ \ \ \ \ \ \ | | |_|_|/ / / | |/| | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>