summaryrefslogtreecommitdiff
path: root/Documentation
Commit message (Collapse)AuthorAgeFilesLines
* Increase packedGit{Limit,WindowSize} on 64 bit systems.Shawn O. Pearce2007-01-061-6/+10
| | | | | | | | | | | | | | If we have a 64 bit address space we can easily afford to commit a larger amount of virtual address space to pack file access. So on these platforms we should increase the default settings of core.packedGit{Limit,WindowSize} to something that will better handle very large projects. Thanks to Andy Whitcroft for pointing out that we can safely increase these defaults on such systems. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Update packedGit config option documentation.Shawn O. Pearce2006-12-301-2/+6
| | | | | | | | | | Corrected minor typos and documented the new k/m/g suffix for core.packedGitWindowSize and core.packedGitLimit. [jc: with a minor markup fix.] Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'master' into sp/mmapJunio C Hamano2006-12-3010-20/+122
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master: Documentation/config.txt (and repo-config manpage): mark-up fix. Teach Git how to parse standard power of 2 suffixes. Use /dev/null for update hook stdin. Redirect update hook stdout to stderr. Remove unnecessary argc parameter from run_command_v. Automatically detect a bare git repository. Replace "GIT_DIR" with GIT_DIR_ENVIRONMENT. Use PATH_MAX constant for --bare. Force core.filemode to false on Cygwin. Fix formatting for urls section of fetch, pull, and push manpages Fix yet another subtle xdl_merge() bug i18n: drop "encoding" header in the output after re-coding. commit-tree: cope with different ways "utf-8" can be spelled. Move commit reencoding parameter parsing to revision.c Documentation: minor rewording for git-log and git-show pages. Documentation: i18n commit log message notes. t3900: test log --encoding=none commit re-encoding: fix confusion between no and default conversion.
| * Documentation/config.txt (and repo-config manpage): mark-up fix.Junio C Hamano2006-12-301-7/+7
| | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Teach Git how to parse standard power of 2 suffixes.Shawn O. Pearce2006-12-301-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes its necessary to supply a value as a power of two in a configuration parameter. In this case the user may want to use the standard suffixes such as K, M, or G to indicate that the numerical value should be multiplied by a constant base before being used. Shell scripts/etc. can also benefit from this automatic option parsing with `git repo-config --int`. [jc: with a couple of test and a slight input tightening] Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Fix formatting for urls section of fetch, pull, and push manpagesTheodore Ts'o2006-12-301-7/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The line: [remote "<remote>"] was getting swallowed up by asciidoc, causing a critical line in the explanation for how to store the .git/remotes information in .git/config to go missing from the git-fetch, git-pull, and git-push manpages. Put all of the examples into delimited blocks to fix this problem and to make them look nicer. Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Move commit reencoding parameter parsing to revision.cJunio C Hamano2006-12-302-0/+8
| | | | | | | | | | | | | | This way, git-rev-list and git-diff-tree with --pretty can use it. Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Documentation: minor rewording for git-log and git-show pages.Junio C Hamano2006-12-302-5/+9
| | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
| * Documentation: i18n commit log message notes.Junio C Hamano2006-12-305-0/+78
| | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Fully activate the sliding window pack access.Shawn O. Pearce2006-12-291-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This finally turns on the sliding window behavior for packfile data access by mapping limited size windows and chaining them under the packed_git->windows list. We consider a given byte offset to be within the window only if there would be at least 20 bytes (one hash worth of data) accessible after the requested offset. This range selection relates to the contract that use_pack() makes with its callers, allowing them to access one hash or one object header without needing to call use_pack() for every byte of data obtained. In the worst case scenario we will map the same page of data twice into memory: once at the end of one window and once again at the start of the next window. This duplicate page mapping will happen only when an object header or a delta base reference is spanned over the end of a window and is always limited to just one page of duplication, as no sane operating system will ever have a page size smaller than a hash. I am assuming that the possible wasted page of virtual address space is going to perform faster than the alternatives, which would be to copy the object header or ref delta into a temporary buffer prior to parsing, or to check the window range on every byte during header parsing. We may decide to revisit this decision in the future since this is just a gut instinct decision and has not actually been proven out by experimental testing. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Introduce new config option for mmap limit.Shawn O. Pearce2006-12-291-0/+9
|/ | | | | | | | | | | | | | | | | Rather than hardcoding the maximum number of bytes which can be mmapped from pack files we should make this value configurable, allowing the end user to increase or decrease this limit on a per-repository basis depending on the size of the repository and the capabilities of their operating system. In general users should not need to manually tune such a low-level setting within the core code, but being able to artifically limit the number of bytes which we can mmap at once from pack files will make it easier to craft test cases for the new mmap sliding window implementation. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'jc/utf8'Junio C Hamano2006-12-281-0/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | * jc/utf8: t3900: test conversion to non UTF-8 as well Rename t3900 test vector file UTF-8: introduce i18n.logoutputencoding. Teach log family --encoding i18n.logToUTF8: convert commit log message to UTF-8 Move encoding conversion routine out of mailinfo to utf8.c Conflicts: commit.c
| * UTF-8: introduce i18n.logoutputencoding.Junio C Hamano2006-12-271-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is plausible for somebody to want to view the commit log in a different encoding from i18n.commitencoding -- the project's policy may be UTF-8 and the user may be using a commit message hook to run iconv to conform to that policy (and either not have i18n.commitencoding to default to UTF-8 or have it explicitly set to UTF-8). Even then, Latin-1 may be more convenient for the usual pager and the terminal the user uses. The new variable i18n.logoutputencoding is used in preference to i18n.commitencoding to decide what encoding to recode the log output in when git-log and friends formats the commit log message. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Use GIT_REFLOG_ACTION environment variable instead.Shawn O. Pearce2006-12-281-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Junio rightly pointed out that the --reflog-action parameter was starting to get out of control, as most porcelain code needed to hand it to other porcelain and plumbing alike to ensure the reflog contained the top-level user action and not the lower-level actions it invoked. At Junio's suggestion we are introducing the new set_reflog_action function to all shell scripts, allowing them to declare early on what their default reflog name should be, but this setting only takes effect if the caller has not already set the GIT_REFLOG_ACTION environment variable. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | everyday: replace a few 'prune' and 'repack' with 'gc'Junio C Hamano2006-12-271-3/+6
| | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Create 'git gc' to perform common maintenance operations.Shawn O. Pearce2006-12-272-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Junio asked for a 'git gc' utility which users can execute on a regular basis to perform basic repository actions such as: * pack-refs --prune * reflog expire * repack -a -d * prune * rerere gc So here is a command which does exactly that. The parameters fed to reflog's expire subcommand can be chosen by the user by setting configuration options in .git/config (or ~/.gitconfig), as users may want different expiration windows for each repository but shouldn't be bothered to remember what they are all of the time. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | git-reflog: gc.* configuration and documentation.Junio C Hamano2006-12-273-0/+71
| | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | rerere gc: honor configuration and document itJunio C Hamano2006-12-272-2/+16
| | | | | | | | | | | | | | Two configuration to control the expiration of rerere records are introduced and documented. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | count-objects -v: show number of packs as well.Junio C Hamano2006-12-271-2/+2
| | | | | | | | | | | | | | | | | | Recent "git push" keeps transferred objects packed much more aggressively than before. Monitoring output from git-count-objects -v for number of loose objects is not enough to decide when to repack -- having too many small packs is also a good cue for repacking. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | everyday: update for v1.5.0Junio C Hamano2006-12-261-41/+48
|/ | | | | | | | | | | | | | Fix minor mark-up mistakes and adjust to v1.5.0 BCP, namely: - use "git add" instead of "git update-index"; - use "git merge" instead of "git pull ."; - use separate remote layout; - use config instead of remotes/origin file; Also updates "My typical git day" example since now I have 'next' branch these days. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Document git-reset <commit> -- <paths>...Junio C Hamano2006-12-261-3/+9
|
* Document --numstat in git-apply and git-diffJunio C Hamano2006-12-262-3/+6
| | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* show-branch --reflog: add documentation.Junio C Hamano2006-12-261-0/+5
| | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* git-add -f: allow adding otherwise ignored files.Junio C Hamano2006-12-251-2/+6
| | | | | | | Instead of just warning, refuse to add otherwise ignored files by default, and allow it with an -f option. Signed-off-by: Junio C Hamano <junkio@cox.net>
* git-add: add ignored files when asked explicitly.Junio C Hamano2006-12-251-3/+8
| | | | | | | | | | | | | | | | | | | One thing many people found confusing about git-add was that a file whose name matches an ignored pattern could not be added to the index. With this, such a file can be added by explicitly spelling its name to git-add. Fileglobs and recursive behaviour do not add ignored files to the index. That is, if a pattern '*.o' is in .gitignore, and two files foo.o, bar/baz.o are in the working tree: $ git add foo.o $ git add '*.o' $ git add bar Only the first form adds foo.o to the index. Signed-off-by: Junio C Hamano <junkio@cox.net>
* git-rm: DocumentationJunio C Hamano2006-12-251-24/+27
| | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* Merge branch 'jc/skip-count'Junio C Hamano2006-12-251-0/+5
|\ | | | | | | | | * jc/skip-count: revision: --skip=<n>
| * revision: --skip=<n>Junio C Hamano2006-12-201-0/+5
| | | | | | | | | | | | | | | | This adds --skip=<n> option to revision traversal machinery. Documentation and test were added by Robert Fitzsimons. Signed-off-by: Robert Fitzsimons <robfitz@273k.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'jc/git-add--interactive'Junio C Hamano2006-12-251-1/+118
|\ \ | | | | | | | | | | | | | | | | | | * jc/git-add--interactive: git-add --interactive: add documentation git-add --interactive: hunk splitting git-add --interactive
| * | git-add --interactive: add documentationJunio C Hamano2006-12-251-1/+118
| |/ | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Makefile: add quick-install-doc for installing pre-built manpagesEric Wong2006-12-232-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds and uses the install-doc-quick.sh file to Documentation/, which is usable for people who track either the 'html' or 'man' heads in Junio's repository (prefixed with 'origin/' if cloned locally). You may override this by specifying DOC_REF in the make environment or in config.mak. GZ may also be set in the environment (or config.mak) if you wish to gzip the documentation after installing it. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Make git-show-branch options similar to git-branch.Brian Gernhardt2006-12-221-4/+6
| | | | | | | | | | | | | | | | | | | | Branch has "-r" for remote branches and "-a" for local and remote. It seems logical to mirror that in show-branch. Also removes the dubiously useful "--tags" option (as part of changing the meaning for "--all"). Signed-off-by: Brian Gernhardt <benji@silverinsanity.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | git-tag: support -F <file> optionJohannes Schindelin2006-12-211-1/+5
| | | | | | | | | | | | | | | | | | This imitates the behaviour of git-commit. Noticed by Han-Wen Nienhuys. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Documentation/git-branch: new -r to delete remote-tracking branches.Quy Tonthat2006-12-201-5/+8
| | | | | | | | | | Signed-off-by: Quy Tonthat <qtonthat@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Merge branch 'ew/svn-pm'Junio C Hamano2006-12-201-10/+10
|\ \ | | | | | | | | | | | | | | | | | | * ew/svn-pm: git-svn: rename 'commit' command to 'set-tree' git-svn: remove support for the svn command-line client git-svn: convert to using Git.pm
| * | git-svn: rename 'commit' command to 'set-tree'Eric Wong2006-12-161-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'set-tree' probably accurately describes what the command formerly known as 'commit' does. I'm not entirely sure that 'dcommit' should be renamed to 'commit' just yet... Perhaps 'push' or 'push-changes'? Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | diff documentation: mostly talk about <commit>Junio C Hamano2006-12-201-2/+2
| | | | | | | | | | | | | | | | | | | | | This corrects minor remaining bits that still talked about <tree-ish>; the Porcelain users (as opposed to plumbers) are mostly interested in commits so use <commit> consistently and keep a sentence that mentions that <tree-ish> can be used in place of them.
* | | Merge branch 'jc/test-clone' into jc/cloneJunio C Hamano2006-12-195-23/+47
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * jc/test-clone: (35 commits) Introduce GIT_TEMPLATE_DIR Revert "fix testsuite: make sure they use templates freshly built from the source" fix testsuite: make sure they use templates freshly built from the source rerere: fix breakage of resolving. Add config example with respect to branch Add documentation for show-branch --topics make git a bit less cryptic on fetch errors make patch_delta() error cases a bit more verbose racy-git: documentation updates. show-ref: fix --exclude-existing parse-remote::expand_refs_wildcard() vim syntax: follow recent changes to commit template show-ref: fix --verify --hash=length show-ref: fix --quiet --verify avoid accessing _all_ loose refs in git-show-ref --verify git-fetch: Avoid reading packed refs over and over again Teach show-branch how to show ref-log data. markup fix in svnimport documentation. Documentation: new option -P for git-svnimport Fix mis-mark-up in git-merge-file.txt documentation ...
| * | Add config example with respect to branchAneesh Kumar K.V2006-12-181-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Update config.txt with example with respect to branch config variable. This give a better idea regarding how branch names are expected. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | Add documentation for show-branch --topicsBrian Gernhardt2006-12-181-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add a quick paragraph explaining the --topics option for show-branch. The explanation is an abbreviated version of the commit message from d320a5437f8304cf9ea3ee1898e49d643e005738. Signed-off-by: Brian Gernhardt <benji@silverinsanity.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | racy-git: documentation updates.Junio C Hamano2006-12-181-18/+20
| | | | | | | | | | | | | | | | | | | | | | | | We've removed the workaround for runtime penalty that did not exist in practice some time ago, but the technical paper that proposed that change still said "we probably should do so". Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | markup fix in svnimport documentation.Junio C Hamano2006-12-171-8/+8
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | Documentation: new option -P for git-svnimportQuy Tonthat2006-12-171-0/+9
| | | | | | | | | | | | | | | | | | | | | Documentation: new option -P for git-svnimport. Signed-off-by: Quy Tonthat <qtonthat@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
| * | Fix mis-mark-up in git-merge-file.txt documentationJunio C Hamano2006-12-171-2/+2
| | | | | | | | | | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* | | git-clone: lose the traditional 'no-separate-remote' layoutJunio C Hamano2006-12-161-14/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Finally. The separate-remote layout is so much more organized than traditional and easier to work with especially when you need to deal with remote repositories with multiple branches and/or you need to deal with more than one remote repositories, and using traditional layout for new repositories simply does not make much sense. Internally we still have code for 1:1 mappings to create a bare clone; that is a good thing and will not go away. Signed-off-by: Junio C Hamano <junkio@cox.net>
* | Document git-merge-fileJohannes Schindelin2006-12-162-0/+95
| | | | | | | | | | | | | | Most of this is derived from the documentation of RCS merge. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
* | git-clone documentationQuy Tonthat2006-12-151-1/+1
|/ | | | | | | | When --use-separate-remote is used on git-clone, the remote heads are saved under $GIT_DIR/refs/remotes/origin/, not "$GIT_DIR/remotes/origin/" Signed-off-by: Junio C Hamano <junkio@cox.net>
* Align section headers of 'git status' to new 'git add'.Shawn O. Pearce2006-12-153-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that 'git add' is considered a first-class UI for 'update-index' and that the 'git add' documentation states "Even modified files must be added to the set of changes about to be committed" we should make the output of 'git status' align with that documentation and common usage. So now we see a status output such as: # Added but not yet committed: # (will commit) # # new file: x # # Changed but not added: # (use "git add file1 file2" to include for commit) # # modified: x # # Untracked files: # (use "git add" on files to include for commit) # # y which just reads better in the context of using 'git add' to manipulate a commit (and not a checkin, whatever the heck that is). We also now support 'color.status.added' as an alias for the existing 'color.status.updated', as this alias more closely aligns with the current output and documentation. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Make git-diff documentation use [--] when it should.Brian Gernhardt2006-12-151-3/+3
| | | | | | | | | | Two of the cases has "[--] [<path>...]" and two had "-- [<path>...]". Not terribly consistent and potentially confusing. Also add "[--]" to the synopsis so that it's obvious you can use it from the very beginning. Signed-off-by: Brian Gernhardt <benji@silverinsanity.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Add --add option to git-repo-configBrian Gernhardt2006-12-151-1/+13
| | | | | | | | | | | | | | | For multivars, the "git-repo-config name value ^$" is useful but nonintuitive and troublesome to do repeatedly (since the value is not at the end of the command line). This commit simply adds an --add option that adds a new value to a multivar. Particularly useful for tracking a new branch on a remote: git-repo-config --add remote.origin.fetch +next:origin/next Includes documentation and test. Signed-off-by: Brian Gernhardt <benji@silverinsanity.com> Signed-off-by: Junio C Hamano <junkio@cox.net>