summaryrefslogtreecommitdiff
path: root/Documentation
AgeCommit message (Collapse)AuthorFilesLines
2008-03-05Teach git mergetool to use custom commands defined at config timeLibravatar Charles Bailey1-2/+23
Currently git mergetool is restricted to a set of commands defined in the script. You can subvert the mergetool.<tool>.path to force git mergetool to use a different command, but if you have a command whose invocation syntax does not match one of the current tools then you would have to write a wrapper script for it. This patch adds two git config variable patterns which allow a more flexible choice of merge tool. If you run git mergetool with -t/--tool or the merge.tool config variable set to an unrecognized tool then git mergetool will query the mergetool.<tool>.cmd config variable. If this variable exists, then git mergetool will treat the specified tool as a custom command and will use a shell eval to run the command with the documented shell variables set. mergetool.<tool>.trustExitCode can be used to indicate that the exit code of the custom command can be used to determine the success of the merge. Signed-off-by: Charles Bailey <charles@hashpling.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-05Tidy up git mergetool's backup file behaviourLibravatar Charles Bailey1-0/+6
Currently a backup pre-merge file with conflict markers is sometimes kept with a .orig extenstion and sometimes removed depending on the particular merge tool used. This patch makes the handling consistent across all merge tools and configurable via a new mergetool.keepBackup config variable Signed-off-by: Charles Bailey <charles@hashpling.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-04Revert "unpack-objects: prevent writing of inconsistent objects"Libravatar Junio C Hamano1-3/+0
This reverts commit d5ef408b9afb5b4417f4e7e1593a96302d666650.
2008-03-04Revert "receive-pack: use strict mode for unpacking objects"Libravatar Junio C Hamano1-6/+0
This reverts commit 28f72a0f232dfc71b3be726e7e71d0a6d5f9ebba.
2008-03-04Merge branch 'maint'Libravatar Junio C Hamano1-1/+2
* maint: Fix 'git remote show' regression on empty repository in 1.5.4 Fix incorrect wording in git-merge.txt. git-merge.sh: better handling of combined --squash,--no-ff,--no-commit options Fix random crashes in http_cleanup()
2008-03-03Fix incorrect wording in git-merge.txt.Libravatar Matthieu Moy1-1/+2
A merge is not necessarily with a remote branch, it can be with any commit. Thanks to Paolo Ciarrocchi for pointing out the problem, and to Nicolas Pitre for pointing out the fact that a merge is not necessarily with a branch head. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-03Update draft release notes for 1.5.5Libravatar Junio C Hamano1-1/+27
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-02Merge branch 'maint'Libravatar Junio C Hamano1-1/+21
* maint: Update draft release notes for 1.5.4.4 revert: actually check for a dirty index tests: introduce test_must_fail git-submodule: Fix typo 'url' which should be '$url' receive-pack: Initialize PATH to include exec-dir. Conflicts: builtin-revert.c
2008-03-02Update draft release notes for 1.5.4.4Libravatar Junio C Hamano1-1/+21
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-02Fix doc typos.Libravatar Ralf Wildenhues2-4/+4
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-02Merge branch 'np/verify-pack'Libravatar Junio C Hamano1-2/+2
* np/verify-pack: add storage size output to 'git verify-pack -v' fix unimplemented packed_object_info_detail() features make verify_one_pack() a bit less wrong wrt packed_git structure factorize revindex code out of builtin-pack-objects.c Conflicts: Makefile
2008-03-02Merge branch 'pb/cvsimport'Libravatar Junio C Hamano1-1/+5
* pb/cvsimport: cvsimport: document that -M can be used multiple times cvsimport: allow for multiple -M options cvsimport: have default merge regex allow for dashes in the branch name
2008-03-02Merge branch 'mk/maint-parse-careful'Libravatar Junio C Hamano3-0/+12
* mk/maint-parse-careful: receive-pack: use strict mode for unpacking objects index-pack: introduce checking mode unpack-objects: prevent writing of inconsistent objects unpack-object: cache for non written objects add common fsck error printing function builtin-fsck: move common object checking code to fsck.c builtin-fsck: reports missing parent commits Remove unused object-ref code builtin-fsck: move away from object-refs to fsck_walk add generic, type aware object chain walker Conflicts: Makefile builtin-fsck.c
2008-03-02Merge branch 'sb/describe-long'Libravatar Junio C Hamano1-0/+9
* sb/describe-long: git-describe: --long shows the object name even for a tagged commit
2008-03-02Documentation: Remove --{min,max}-age option from git-log(1)Libravatar Jakub Narebski1-0/+2
The --max-age=<timestamp> and --min-age=<timestamp> are now shown only in the git-rev-list manpage (plumbing). Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-01Documentation/git-rebase.txt: Add --strategy to synopsysLibravatar Mike Hommey1-0/+1
Signed-off-by: Mike Hommey <mh@glandium.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-01CodingGuidelines: spell out how we use grep in our scriptsLibravatar Junio C Hamano1-0/+12
Our scripts try to stick to fairly limited subset of POSIX BRE for portability. It is unclear from manual page from GNU grep which is GNU extension and which is portable, so let's spell it out to help new people to keep their contributions from hurting porters. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-01add storage size output to 'git verify-pack -v'Libravatar Nicolas Pitre1-2/+2
This can possibly break external scripts that depend on the previous output, but those script can't possibly be critical to Git usage, and fixing them should be trivial. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-01gc: Add --quiet optionLibravatar Frank Lichtenheld1-1/+4
Pass -q option to git-repack. Signed-off-by: Frank Lichtenheld <frank@lichtenheld.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-03-01cvsimport: document that -M can be used multiple timesLibravatar Philippe Bruhat (BooK1-1/+5
Also document the capture behaviour (source branch name in $1) Signed-off-by: Philippe Bruhat (BooK) <book@cpan.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-29Merge branch 'maint'Libravatar Junio C Hamano1-1/+1
* maint: Documentation cherry-pick: Fix cut-and-paste error git.el: find the git-status buffer whatever its name is git-gui: Paper bag fix info dialog when no files are staged at commit
2008-02-29Documentation cherry-pick: Fix cut-and-paste errorLibravatar Mike Ralphson1-1/+1
Signed-off-by: Mike Ralphson <mike@abacus.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-29Update draft release notes for 1.5.5Libravatar Junio C Hamano1-9/+82
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-29rev-list: add --branches, --tags and --remotesLibravatar Uwe Kleine-König1-0/+3
These flags are already known to rev-parse and have the same meaning. This patch allows to run gitk as follows: gitk --branches --not --remotes to show only your local work. Signed-off-by: Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-29Merge branch 'maint'Libravatar Junio C Hamano2-1/+27
* maint: templates/Makefile: don't depend on local umask setting Correct name of diff_flush() in API documentation Start preparing for 1.5.4.4 Conflicts: RelNotes
2008-02-28receive-pack: use strict mode for unpacking objectsLibravatar Martin Koegler1-0/+6
Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-28index-pack: introduce checking modeLibravatar Martin Koegler1-0/+3
Adds strict option, which bails out if the pack would introduces broken object or links in the repository. Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-28unpack-objects: prevent writing of inconsistent objectsLibravatar Martin Koegler1-0/+3
This patch introduces a strict mode, which ensures that: - no malformed object will be written - no object with broken links will be written The patch ensures this by delaying the write of all non blob object. These object are written, after all objects they link to are written. An error can only result in unreferenced objects. Signed-off-by: Martin Koegler <mkoegler@auto.tuwien.ac.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-28Correct name of diff_flush() in API documentationLibravatar Daniel Barkalow1-1/+1
Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-27Start preparing for 1.5.4.4Libravatar Junio C Hamano1-0/+26
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-27Merge branch 'maint'Libravatar Junio C Hamano1-0/+4
* maint: Eliminate confusing "won't bisect on seeked tree" failure builtin-reflog.c: don't install new reflog on write failure send-email: fix In-Reply-To regression Fix 'git cvsexportcommit -w $cvsdir ...' when used with relative $GIT_DIR Add testcase for 'git cvsexportcommit -w $cvsdir ...' with relative $GIT_DIR Prompt to continue when editing during rebase --interactive Documentation/git svn log: add a note about timezones. Don't use GIT_CONFIG in t5505-remote Conflicts: t/t9001-send-email.sh t/t9200-git-cvsexportcommit.sh
2008-02-27Merge branch 'js/branch-track'Libravatar Junio C Hamano3-33/+33
* js/branch-track: doc: documentation update for the branch track changes branch: optionally setup branch.*.merge from upstream local branches Conflicts: Documentation/config.txt Documentation/git-branch.txt Documentation/git-checkout.txt builtin-branch.c cache.h t/t7201-co.sh
2008-02-27Merge branch 'db/cover-letter'Libravatar Junio C Hamano1-7/+18
* db/cover-letter: Improve collection of information for format-patch --cover-letter Add API access to shortlog t4014: Replace sed's non-standard 'Q' by standard 'q' Support a --cc=<email> option in format-patch Combine To: and Cc: headers Fix format.headers not ending with a newline Add tests for extra headers in format-patch Add a --cover-letter option to format-patch Export some email and pretty-printing functions Improve message-id generation flow control for format-patch Add more tests for format-patch Conflicts: builtin-log.c builtin-shortlog.c pretty.c
2008-02-27Merge branch 'jc/diff-relative'Libravatar Junio C Hamano1-0/+8
* jc/diff-relative: diff --relative: help working in a bare repository diff --relative: output paths as relative to the current subdirectory
2008-02-27Merge branch 'db/host-alias'Libravatar Junio C Hamano2-0/+34
* db/host-alias: url rewriting: take longest and first match Add support for url aliases in config files Use ALLOC_GROW in remote.{c,h}
2008-02-27Merge branch 'ae/pack-autothread'Libravatar Junio C Hamano2-0/+4
* ae/pack-autothread: Revert "pack-objects: Print a message describing the number of threads for packing" pack-objects: Print a message describing the number of threads for packing pack-objects: Add runtime detection of online CPU's
2008-02-27Merge branch 'sp/describe'Libravatar Junio C Hamano1-0/+5
* sp/describe: Use git-describe --exact-match in bash prompt on detached HEAD Teach git-describe --exact-match to avoid expensive tag searches Avoid accessing non-tag refs in git-describe unless --all is requested Teach git-describe to use peeled ref information when scanning tags Optimize peel_ref for the current ref of a for_each_ref callback
2008-02-27Documentation/git svn log: add a note about timezones.Libravatar Miklos Vajna1-0/+4
git svn log mimics the timezone converting behaviour of svn log, but this was undocumented. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-26Add '--fixed-strings' option to "git log --grep" and friendsLibravatar Jakub Narebski2-0/+6
Add support for -F | --fixed-strings option to "git log --grep" and friends: "git log --author", "git log --committer=<pattern>". Code is based on implementation of this option in "git grep". Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-26Merge branch 'maint'Libravatar Junio C Hamano2-3/+14
* maint: Documentation/git-am.txt: Pass -r in the example invocation of rm -f .dotest timezone_names[]: fixed the tz offset for New Zealand. filter-branch documentation: non-zero exit status in command abort the filter rev-parse: fix potential bus error with --parseopt option spec handling Use a single implementation and API for copy_file() Documentation/git-filter-branch: add a new msg-filter example Correct fast-export file mode strings to match fast-import standard
2008-02-25Documentation/git-am.txt: Pass -r in the example invocation of rm -f .dotestLibravatar Bryan Donlan1-1/+1
Signed-off-by: Bryan Donlan <bdonlan@fushizen.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-25filter-branch documentation: non-zero exit status in command abort the filterLibravatar Caio Marcelo de Oliveira Filho1-2/+4
Since commit 8c1ce0f46b85d40f215084eed7313896300082df filter-branch fails when a <command> has a non-zero exit status. This commit makes it clear in the documentation and also fixes the parent-filter example, that was incorrectly returning non-zero when the commit being tested wasn't the one to be rewritten. Signed-off-by: Caio Marcelo de Oliveira Filho <cmarcelo@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-25git-describe: --long shows the object name even for a tagged commitLibravatar Santi Béjar1-0/+9
This is useful when you want to see parts of the commit object name in "describe" output, even when the commit in question happens to be a tagged version. Instead of just emitting the tag name, it will describe such a commit as v1.2-0-deadbeef (0th commit since tag v1.2 that points at object deadbeef....). Signed-off-by: Santi Béjar <sbejar@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-25Documentation/git-filter-branch: add a new msg-filter exampleLibravatar Miklos Vajna1-0/+9
There were no example on how to edit commit messages, so add an msg-filter example. Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-24url rewriting: take longest and first matchLibravatar Junio C Hamano1-3/+2
Earlier we had a cop-out in the documentation to make the behaviour "undefined" if configuration had more than one insteadOf that would match the target URL, like this: [url "git://git.or.cz/"] insteadOf = "git.or.cz:" ; (1) insteadOf = "repo.or.cz:" ; (2) [url "/local/mirror/"] insteadOf = "git.or.cz:myrepo" ; (3) insteadOf = "repo.or.cz:" ; (4) It would be most natural to take the longest and first match, i.e. - rewrite "git.or.cz:frotz" to "git://git.or.cz/frotz" by using (1), - rewrite "git.or.cz:myrepo/xyzzy" to "/local/mirror/xyzzy" by favoring (3) over (1), and - rewrite "repo.or.cz:frotz" to "git://git.or.cz/frotz" by favoring (2) over (4). Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-24Add support for url aliases in config filesLibravatar Daniel Barkalow2-0/+35
This allows users with different preferences for access methods to the same remote repositories to rewrite each other's URLs by pattern matching across a large set of similiarly set up repositories to each get the desired access. For example, if you don't have a kernel.org account, you might want settings like: [url "git://git.kernel.org/pub/"] insteadOf = master.kernel.org:/pub Then, if you give git a URL like: master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6.git it will act like you gave it: git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git and you can cut-and-paste pull requests in email without fixing them by hand, for example. Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-24git-bundle.txt: Add different strategies to create the bundleLibravatar Santi Béjar1-9/+35
Signed-off-by: Santi Béjar <sbejar@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-24Merge branch 'jc/apply-whitespace'Libravatar Junio C Hamano1-0/+4
* jc/apply-whitespace: ws_fix_copy(): move the whitespace fixing function to ws.c apply: do not barf on patch with too large an offset core.whitespace: cr-at-eol git-apply --whitespace=fix: fix whitespace fuzz introduced by previous run builtin-apply.c: pass ws_rule down to match_fragment() builtin-apply.c: move copy_wsfix() function a bit higher. builtin-apply.c: do not feed copy_wsfix() leading '+' builtin-apply.c: simplify calling site to apply_line() builtin-apply.c: clean-up apply_one_fragment() builtin-apply.c: mark common context lines in lineinfo structure. builtin-apply.c: optimize match_beginning/end processing a bit. builtin-apply.c: make it more line oriented builtin-apply.c: push match-beginning/end logic down builtin-apply.c: restructure "offset" matching builtin-apply.c: refactor small part that matches context
2008-02-24Teach git-describe --exact-match to avoid expensive tag searchesLibravatar Shawn O. Pearce1-0/+5
Sometimes scripts want (or need) the annotated tag name that exactly matches a specific commit, or no tag at all. In such cases it can be difficult to determine if the output of `git describe $commit` is a real tag name or a tag+abbreviated commit. A common idiom is to run git-describe twice: if test $(git describe $commit) = $(git describe --abbrev=0 $commit) ... but this is a huge waste of time if the caller is just going to pick a different method to describe $commit or abort because it is not exactly an annotated tag. Setting the maximum number of candidates to 0 allows the caller to ask for only a tag that directly points at the supplied commit, or to have git-describe abort if no such item exists. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-02-23pack-objects: Add runtime detection of online CPU'sLibravatar Andreas Ericsson2-0/+4
Packing objects can be done in parallell nowadays, but it's only done if the config option pack.threads is set to a value above 1. Because of that, the code-path used is often not the most optimal one. This patch adds a routine to detect the number of online CPU's at runtime (online_cpus()). When pack.threads (or --threads=) is given a value of 0, the number of threads is set to the number of online CPU's. This feature is also documented. As per Nicolas Pitre's recommendations, the default is still to run pack-objects single-threaded unless explicitly activated, either by configuration or by command line parameter. The routine online_cpus() is a rework of "numcpus.c", written by one Philip Willoughby <pgw99@doc.ic.ac.uk>. numcpus.c is in the public domain and can presently be downloaded from http://csgsoft.doc.ic.ac.uk/numcpus/ Signed-off-by: Andreas Ericsson <ae@op5.se> Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Junio C Hamano <gitster@pobox.com>