From f496454e0fd22d003e9c9b5c3742b12d526bc0a4 Mon Sep 17 00:00:00 2001 From: Christian Schlotter Date: Mon, 19 Feb 2007 13:35:35 +0100 Subject: git-clone: Sync documentation to usage note. Documentation advertises the new `--depth ' parameter with an equal sign, while the usage notes (shown after `git-clone --help') do not. If I understood git-clone's source code correctly, the version without the equal sign is correct, which is why this patch syncs documentation to the usage note. Signed-off-by: Christian Schlotter Signed-off-by: Junio C Hamano --- Documentation/RelNotes-1.5.0.txt | 2 +- Documentation/git-clone.txt | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'Documentation') diff --git a/Documentation/RelNotes-1.5.0.txt b/Documentation/RelNotes-1.5.0.txt index 599efb8c90..daf4bdb0d7 100644 --- a/Documentation/RelNotes-1.5.0.txt +++ b/Documentation/RelNotes-1.5.0.txt @@ -448,7 +448,7 @@ Updates in v1.5.0 since v1.4.4 series - There is a partial support for 'shallow' repositories that keeps only recent history. A 'shallow clone' is created by specifying how deep that truncated history should be - (e.g. "git clone --depth=5 git://some.where/repo.git"). + (e.g. "git clone --depth 5 git://some.where/repo.git"). Currently a shallow repository has number of limitations: diff --git a/Documentation/git-clone.txt b/Documentation/git-clone.txt index 707376f22c..6d32c491a5 100644 --- a/Documentation/git-clone.txt +++ b/Documentation/git-clone.txt @@ -11,7 +11,7 @@ SYNOPSIS [verse] 'git-clone' [--template=] [-l [-s]] [-q] [-n] [--bare] [-o ] [-u ] [--reference ] - [--depth=] [] + [--depth ] [] DESCRIPTION ----------- @@ -96,7 +96,7 @@ OPTIONS if unset the templates are taken from the installation defined default, typically `/usr/share/git-core/templates`. ---depth=:: +--depth :: Create a 'shallow' clone with a history truncated to the specified number of revs. A shallow repository has number of limitations (you cannot clone or fetch from -- cgit v1.2.3 From 1e592d65b50dbec87fde9f4ef1b7fd8d90bf7b8c Mon Sep 17 00:00:00 2001 From: Theodore Ts'o Date: Sun, 18 Feb 2007 23:00:00 -0500 Subject: Teach git-remote to update existing remotes by fetching from them This allows users to use the command "git remote update" to update all remotes that are being tracked in the repository. Signed-off-by: "Theodore Ts'o" Signed-off-by: Junio C Hamano --- Documentation/config.txt | 4 ++++ Documentation/git-remote.txt | 10 +++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'Documentation') diff --git a/Documentation/config.txt b/Documentation/config.txt index 38655350f2..d8e696f4cd 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -439,6 +439,10 @@ pull.octopus:: pull.twohead:: The default merge strategy to use when pulling a single branch. +remote.fetch:: + The list of remotes which are fetched by "git remote update". + See gitlink:git-remote[1]. + remote..url:: The URL of a remote repository. See gitlink:git-fetch[1] or gitlink:git-push[1]. diff --git a/Documentation/git-remote.txt b/Documentation/git-remote.txt index a60c31a315..06ba2e6f26 100644 --- a/Documentation/git-remote.txt +++ b/Documentation/git-remote.txt @@ -13,6 +13,7 @@ SYNOPSIS 'git-remote' add 'git-remote' show 'git-remote' prune +'git-remote' update DESCRIPTION ----------- @@ -40,7 +41,14 @@ Gives some information about the remote . Deletes all stale tracking branches under . These stale branches have already been removed from the remote repository -referenced by , but are still locally available in "remotes/". +referenced by , but are still locally available in +"remotes/". + +'update':: + +Fetch updates for the remotes in the repository. By default all remotes +are updated, but this can be configured via the configuration parameter +'remote.fetch'. (See gitlink:git-config[1]). DISCUSSION -- cgit v1.2.3 From 32043c9f8c60fc03b0b6a324c559d98094729323 Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Wed, 14 Feb 2007 12:48:14 +0100 Subject: config: read system-wide defaults from /etc/gitconfig The settings in /etc/gitconfig can be overridden in ~/.gitconfig, which in turn can be overridden in .git/config. Signed-off-by: Johannes Schindelin Signed-off-by: Junio C Hamano --- Documentation/config.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Documentation') diff --git a/Documentation/config.txt b/Documentation/config.txt index 38655350f2..1dd90d8046 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -5,7 +5,8 @@ The git configuration file contains a number of variables that affect the git command's behavior. `.git/config` file for each repository is used to store the information for that repository, and `$HOME/.gitconfig` is used to store per user information to give -fallback values for `.git/config` file. +fallback values for `.git/config` file. The file `/etc/gitconfig` +can be used to store system-wide defaults. They can be used by both the git plumbing and the porcelains. The variables are divided into sections, where -- cgit v1.2.3 From a53b12c3a22b62c3b47c527f6641bb5ceceb0c1b Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Tue, 20 Feb 2007 00:44:35 -0800 Subject: Link 1.5.0.1 documentation from the main page. Signed-off-by: Junio C Hamano --- Documentation/git.txt | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Documentation') diff --git a/Documentation/git.txt b/Documentation/git.txt index 3d8be5931c..aa3acc0466 100644 --- a/Documentation/git.txt +++ b/Documentation/git.txt @@ -35,6 +35,10 @@ ifdef::stalenotes[] You are reading the documentation for the latest version of git. Documentation for older releases are available here: +* link:v1.5.0.1/git.html[documentation for release 1.5.0.1] + +* link:v1.5.0.1/RelNotes-1.5.0.1.txt[release notes for 1.5.0.1] + * link:v1.5.0/git.html[documentation for release 1.5.0] * link:v1.5.0/RelNotes-1.5.0.txt[release notes for 1.5.0] -- cgit v1.2.3 From 4a6b9bb60ab3cdb3a749ec43763845a7a60d40d4 Mon Sep 17 00:00:00 2001 From: Simon 'corecode' Schubert Date: Sun, 18 Feb 2007 18:17:08 +0100 Subject: Allow passing of an alternative CVSROOT via -d. This is necessary if using CVS in an asymmetric fashion, i.e. when the CVSROOT you are checking out from differs from the CVSROOT you have to commit to. Signed-off-by: Simon 'corecode' Schubert Signed-off-by: Junio C Hamano --- Documentation/git-cvsexportcommit.txt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'Documentation') diff --git a/Documentation/git-cvsexportcommit.txt b/Documentation/git-cvsexportcommit.txt index 27d531b888..555b8234f0 100644 --- a/Documentation/git-cvsexportcommit.txt +++ b/Documentation/git-cvsexportcommit.txt @@ -8,7 +8,7 @@ git-cvsexportcommit - Export a single commit to a CVS checkout SYNOPSIS -------- -'git-cvsexportcommit' [-h] [-v] [-c] [-P] [-p] [-a] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID +'git-cvsexportcommit' [-h] [-v] [-c] [-P] [-p] [-a] [-d cvsroot] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID DESCRIPTION @@ -43,6 +43,11 @@ OPTIONS Add authorship information. Adds Author line, and Committer (if different from Author) to the message. +-d:: + Set an alternative CVSROOT to use. This corresponds to the CVS + -d parameter. Usually users will not want to set this, except + if using CVS in an asymmetric fashion. + -f:: Force the merge even if the files are not up to date. -- cgit v1.2.3 From 1918278ea1019553b01297aad2caeed88e9092a4 Mon Sep 17 00:00:00 2001 From: Theodore Ts'o Date: Tue, 20 Feb 2007 15:13:43 -0500 Subject: Allow git-remote to update named groups of remotes In response to a feature request from Shawn Pearce, this patch allows a user to update a named group of remotes by using "git remote update ", where the group is defined in the config file by remotes.. The default if the named group is not specified is now fetched group remotes.default, instead of remote.fetch, which is what had been previously used. In addition, if remotes.default is not defined, all remotes defined in the config file will be used, as before, but there is now also possible to request that a particular repository to be skipped by default by using the boolean configuration parameter remote..skipDefaultUpdate. Signed-off-by: "Theodore Ts'o" Signed-off-by: Junio C Hamano --- Documentation/config.txt | 12 ++++++++---- Documentation/git-remote.txt | 11 +++++++---- 2 files changed, 15 insertions(+), 8 deletions(-) (limited to 'Documentation') diff --git a/Documentation/config.txt b/Documentation/config.txt index d8e696f4cd..f5c846f410 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -439,10 +439,6 @@ pull.octopus:: pull.twohead:: The default merge strategy to use when pulling a single branch. -remote.fetch:: - The list of remotes which are fetched by "git remote update". - See gitlink:git-remote[1]. - remote..url:: The URL of a remote repository. See gitlink:git-fetch[1] or gitlink:git-push[1]. @@ -455,6 +451,10 @@ remote..push:: The default set of "refspec" for gitlink:git-push[1]. See gitlink:git-push[1]. +remote..skipDefaultUpdate:: + If true, this remote will be skipped by default when updating + using the remote subcommand of gitlink:git-remote[1]. + remote..receivepack:: The default program to execute on the remote side when pushing. See option \--exec of gitlink:git-push[1]. @@ -463,6 +463,10 @@ remote..uploadpack:: The default program to execute on the remote side when fetching. See option \--exec of gitlink:git-fetch-pack[1]. +remotes.:: + The list of remotes which are fetched by "git remote update + ". See gitlink:git-remote[1]. + repack.usedeltabaseoffset:: Allow gitlink:git-repack[1] to create packs that uses delta-base offset. Defaults to false. diff --git a/Documentation/git-remote.txt b/Documentation/git-remote.txt index 06ba2e6f26..250761f97e 100644 --- a/Documentation/git-remote.txt +++ b/Documentation/git-remote.txt @@ -13,7 +13,7 @@ SYNOPSIS 'git-remote' add 'git-remote' show 'git-remote' prune -'git-remote' update +'git-remote' update [group] DESCRIPTION ----------- @@ -46,9 +46,12 @@ referenced by , but are still locally available in 'update':: -Fetch updates for the remotes in the repository. By default all remotes -are updated, but this can be configured via the configuration parameter -'remote.fetch'. (See gitlink:git-config[1]). +Fetch updates for a named set of remotes in the repository as defined by +remotes.. If a named group is not specified on the command line, +the configuration parameter remotes.default will get used; if +remotes.default is not defined, all remotes which do not the +configuration parameter remote..skipDefaultUpdate set to true will +be updated. (See gitlink:git-config[1]). DISCUSSION -- cgit v1.2.3 From e4a15f40bcd9e5679345d3cc74db3162310a7c83 Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Wed, 21 Feb 2007 17:59:08 -0500 Subject: Document the new core.bare configuration option. Signed-off-by: Shawn O. Pearce Signed-off-by: Junio C Hamano --- Documentation/config.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'Documentation') diff --git a/Documentation/config.txt b/Documentation/config.txt index 38655350f2..4a22a00b71 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -142,6 +142,18 @@ core.preferSymlinkRefs:: This is sometimes needed to work with old scripts that expect HEAD to be a symbolic link. +core.bare:: + If true this repository is assumed to be 'bare' and has no + working directory associated with it. If this is the case a + number of commands that require a working directory will be + disabled, such as gitlink:git-add[1] or gitlink:git-merge[1]. ++ +This setting is automatically guessed by gitlink:git-clone[1] or +gitlink:git-init[1] when the repository was created. By default a +repository that ends in "/.git" is assumed to be not bare (bare = +false), while all other repositories are assumed to be bare (bare += true). + core.logAllRefUpdates:: Updates to a ref is logged to the file "$GIT_DIR/logs/", by appending the new and old -- cgit v1.2.3 From 07a1c95045a8c4983d3868f6070d9fa9ba5ff596 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 22 Jan 2007 15:47:41 -0800 Subject: git-svn: get rid of additional fetch-arguments It's not really useful anymore now that we have a better --follow-parent for the valid cases. Any other use of it is not valid. Signed-off-by: Eric Wong --- Documentation/git-svn.txt | 24 ------------------------ 1 file changed, 24 deletions(-) (limited to 'Documentation') diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt index 6ce6a3944d..6daba241e9 100644 --- a/Documentation/git-svn.txt +++ b/Documentation/git-svn.txt @@ -49,9 +49,6 @@ remotes/git-svn and work on that branch. Use the 'dcommit' command (see below) to write git commits back to remotes/git-svn. -See '<>' if you are interested in -manually joining branches on commit. - 'dcommit':: Commit each diff from a specified head directly to the SVN repository, and then rebase or reset (depending on whether or @@ -443,27 +440,6 @@ be remotes/$GIT_SVN_ID, instead of remotes/git-svn. Any remotes/$GIT_SVN_ID branch should never be modified by the user outside of git-svn commands. -[[fetch-args]] -ADDITIONAL FETCH ARGUMENTS --------------------------- -This is for advanced users, most users should ignore this section. - -Unfetched SVN revisions may be imported as children of existing commits -by specifying additional arguments to 'fetch'. Additional parents may -optionally be specified in the form of sha1 hex sums at the -command-line. Unfetched SVN revisions may also be tied to particular -git commits with the following syntax: - ------------------------------------------------- - svn_revision_number=git_commit_sha1 ------------------------------------------------- - -This allows you to tie unfetched SVN revision 375 to your current HEAD: - ------------------------------------------------- - git-svn fetch 375=$(git-rev-parse HEAD) ------------------------------------------------- - If you're tracking a directory that has moved, or otherwise been branched or tagged off of another directory in the repository and you care about the full history of the project, then you can use -- cgit v1.2.3 From f0ecca1041aff2e1398edcdaf5f0ce08a96f5f0f Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 30 Jan 2007 13:11:14 -0800 Subject: git-svn: remove the 'rebuild' command and make the functionality automatic Since refs/remotes/* are not automatically cloned, we expect the user to be capable of copying those references themselves anyways. Also removed the documentation for --ignore-nodate while we're at it; it has also been made automatic. Signed-off-by: Eric Wong --- Documentation/git-svn.txt | 41 +++-------------------------------------- 1 file changed, 3 insertions(+), 38 deletions(-) (limited to 'Documentation') diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt index 6daba241e9..22dd7b219d 100644 --- a/Documentation/git-svn.txt +++ b/Documentation/git-svn.txt @@ -93,16 +93,6 @@ remotes/git-svn. commit. All merging is assumed to have taken place independently of git-svn functions. -'rebuild':: - Not a part of daily usage, but this is a useful command if - you've just cloned a repository (using gitlink:git-clone[1]) that was - tracked with git-svn. Unfortunately, git-clone does not clone - git-svn metadata and the svn working tree that git-svn uses for - its operations. This rebuilds the metadata so git-svn can - resume fetch operations. A Subversion URL may be optionally - specified at the command-line if the directory/repository you're - tracking has moved or changed protocols. - 'show-ignore':: Recursively finds and lists the svn:ignore property on directories. The output is suitable for appending to @@ -322,9 +312,9 @@ config key: svn.followparent --no-metadata:: This gets rid of the git-svn-id: lines at the end of every commit. - With this, you lose the ability to use the rebuild command. If - you ever lose your .git/svn/git-svn/.rev_db file, you won't be - able to fetch again, either. This is fine for one-shot imports. + If you lose your .git/svn/git-svn/.rev_db file, git-svn will not + be able to rebuild it and you won't be able to fetch again, + either. This is fine for one-shot imports. The 'git-svn log' command will not work on repositories using this, either. @@ -333,31 +323,6 @@ config key: svn.nometadata -- -COMPATIBILITY OPTIONS ---------------------- --- - ---upgrade:: -Only used with the 'rebuild' command. - -Run this if you used an old version of git-svn that used -"git-svn-HEAD" instead of "remotes/git-svn" as the branch -for tracking the remote. - ---ignore-nodate:: -Only used with the 'fetch' command. - -By default git-svn will crash if it tries to import a revision -from SVN which has '(no date)' listed as the date of the revision. -This is repository corruption on SVN's part, plain and simple. -But sometimes you really need those revisions anyway. - -If supplied git-svn will convert '(no date)' entries to the UNIX -epoch (midnight on Jan. 1, 1970). Yes, that's probably very wrong. -SVN was very wrong. - --- - Basic Examples ~~~~~~~~~~~~~~ -- cgit v1.2.3 From 9760adccccc0cc4dccc2f28765611550db640ceb Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Wed, 31 Jan 2007 03:06:56 -0800 Subject: git-svn: reinstate --no-metadata, add --svn-remote=, variable cleanups --svn-remote allows the default remote name to be overridden (useful for tracking multiple SVN repositories). Signed-off-by: Eric Wong --- Documentation/git-svn.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'Documentation') diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt index 22dd7b219d..2914042587 100644 --- a/Documentation/git-svn.txt +++ b/Documentation/git-svn.txt @@ -301,6 +301,12 @@ section on '<>' for more information on using GIT_SVN_ID. +-R:: +--svn-remote :: + Specify the [svn-remote ""] section to use, + this allows multiple repositories to be tracked. + Default: git-svn + --follow-parent:: This is especially helpful when we're tracking a directory that has been moved around within the repository, or if we -- cgit v1.2.3 From 0bed5eaa0edc3a2dfa0d5910ff1fb280539b242d Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Fri, 9 Feb 2007 02:45:03 -0800 Subject: git-svn: enable follow-parent functionality by default --no-follow-parent disables and reverts it back to the old default behavior of not following parents (if you don't care for full history). Signed-off-by: Eric Wong --- Documentation/git-svn.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Documentation') diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt index 2914042587..50dc6ac818 100644 --- a/Documentation/git-svn.txt +++ b/Documentation/git-svn.txt @@ -311,7 +311,8 @@ for more information on using GIT_SVN_ID. This is especially helpful when we're tracking a directory that has been moved around within the repository, or if we started tracking a branch and never tracked the trunk it was - descended from. + descended from. This feature is enabled by default, use + --no-follow-parent to disable it. config key: svn.followparent -- cgit v1.2.3 From 97ae091169b233ecd80eb5ef2da80145f8c724f7 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 11 Feb 2007 15:21:24 -0800 Subject: git-svn: extra safety for noMetadata and useSvmProps users Make sure we flush our userspace buffers and and fsync(2) .rev_db information to disk if we use these options because we really don't want to lose this information. Also, disallow --use-svm-props and --no-metadata from the command-line because history will be inconsistent if they're only used occasionally. If a user wants to use these options, they must be set in the config so they're always on. Signed-off-by: Eric Wong --- Documentation/git-svn.txt | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) (limited to 'Documentation') diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt index 50dc6ac818..d45283a53f 100644 --- a/Documentation/git-svn.txt +++ b/Documentation/git-svn.txt @@ -316,17 +316,33 @@ for more information on using GIT_SVN_ID. config key: svn.followparent ---no-metadata:: +svn.noMetadata: +svn-remote..noMetadata: This gets rid of the git-svn-id: lines at the end of every commit. If you lose your .git/svn/git-svn/.rev_db file, git-svn will not be able to rebuild it and you won't be able to fetch again, either. This is fine for one-shot imports. - The 'git-svn log' command will not work on repositories using this, - either. - -config key: svn.nometadata + The 'git-svn log' command will not work on repositories using + this, either. Using this conflicts with the 'useSvmProps' + option for (hopefully) obvious reasons. + +svn.useSvmProps: +svn-remote..useSvmProps: + This allows git-svn to re-map repository URLs and UUIDs from + mirrors created using SVN::Mirror (or svk) for metadata. + + If an SVN revision has a property, "svm:headrev", it is likely + that the revision was created by SVN::Mirror (also used by SVK). + The property contains a repository UUID and a revision. We want + to make it look like we are mirroring the original URL, so + introduce a helper function that returns the original identity + URL and UUID, and use it when generating metadata in commit + messages. + + Using this conflicts with the 'noMetadata' option for + (hopefully) obvious reasons. -- -- cgit v1.2.3 From a836a0e1729d1758b4085cd07fc79cb9acb64908 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Wed, 14 Feb 2007 19:34:56 -0800 Subject: git-svn: documentation updates for new functionality Force the showing of the --minimize flag as an option in the 'migrate' help. Also, fix the usage function to correctly filter out the deprecated aliases. Signed-off-by: Eric Wong --- Documentation/git-svn.txt | 202 +++++++++++++++++++--------------------------- 1 file changed, 81 insertions(+), 121 deletions(-) (limited to 'Documentation') diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt index d45283a53f..ba3f7ce6f1 100644 --- a/Documentation/git-svn.txt +++ b/Documentation/git-svn.txt @@ -13,14 +13,13 @@ DESCRIPTION ----------- git-svn is a simple conduit for changesets between Subversion and git. It is not to be confused with gitlink:git-svnimport[1], which is -read-only and geared towards tracking multiple branches. +read-only. git-svn was originally designed for an individual developer who wants a bidirectional flow of changesets between a single branch in Subversion and an arbitrary number of branches in git. Since its inception, git-svn has gained the ability to track multiple branches in a manner -similar to git-svnimport; but it cannot (yet) automatically detect new -branches and tags like git-svnimport does. +similar to git-svnimport. git-svn is especially useful when it comes to tracking repositories not organized in the way Subversion developers recommend (trunk, @@ -31,23 +30,40 @@ COMMANDS -- 'init':: - Creates an empty git repository with additional metadata - directories for git-svn. The Subversion URL must be specified - as a command-line argument. Optionally, the target directory - to operate on can be specified as a second argument. Normally - this command initializes the current directory. + Initializes an empty git repository with additional + metadata directories for git-svn. The Subversion URL + may be specified as a command-line argument, or as full + URL arguments to -T/-t/-b. Optionally, the target + directory to operate on can be specified as a second + argument. Normally this command initializes the current + directory. -'fetch':: +-T:: +--trunk=:: +-t:: +--tags=:: +-b:: +--branches=:: + These are optional command-line options for init. Each of + these flags can point to a relative repository path + (--tags=project/tags') or a full url + (--tags=https://foo.org/project/tags) -Fetch unfetched revisions from the Subversion URL we are -tracking. refs/remotes/git-svn will be updated to the -latest revision. +--prefix= + This allows one to specify a prefix which is prepended + to the names of remotes if trunk/branches/tags are + specified. The prefix does not automatically include a + trailing slash, so be sure you include one in the + argument if that is what you want. This is useful if + you wish to track multiple projects that share a common + repository. -Note: You should never attempt to modify the remotes/git-svn -branch outside of git-svn. Instead, create a branch from -remotes/git-svn and work on that branch. Use the 'dcommit' -command (see below) to write git commits back to -remotes/git-svn. +'fetch':: + + Fetch unfetched revisions from the Subversion remote we are + tracking. The name of the [svn-remote "..."] section in the + .git/config file may be specified as an optional command-line + argument. 'dcommit':: Commit each diff from a specified head directly to the SVN @@ -109,53 +125,13 @@ remotes/git-svn. repository (that has been init-ed with git-svn). The -r option is required for this. -'graft-branches':: - This command attempts to detect merges/branches from already - imported history. Techniques used currently include regexes, - file copies, and tree-matches). This command generates (or - modifies) the $GIT_DIR/info/grafts file. This command is - considered experimental, and inherently flawed because - merge-tracking in SVN is inherently flawed and inconsistent - across different repositories. - -'multi-init':: - This command supports git-svnimport-like command-line syntax for - importing repositories that are laid out as recommended by the - SVN folks. This is a bit more tolerant than the git-svnimport - command-line syntax and doesn't require the user to figure out - where the repository URL ends and where the repository path - begins. - --T:: ---trunk=:: --t:: ---tags=:: --b:: ---branches=:: - These are the command-line options for multi-init. Each of - these flags can point to a relative repository path - (--tags=project/tags') or a full url - (--tags=https://foo.org/project/tags) - ---prefix= - This allows one to specify a prefix which is prepended to the - names of remotes. The prefix does not automatically include a - trailing slash, so be sure you include one in the argument if - that is what you want. This is useful if you wish to track - multiple projects that share a common repository. - -'multi-fetch':: - This runs fetch on all known SVN branches we're tracking. This - will NOT discover new branches (unlike git-svnimport), so - multi-init will need to be re-run (it's idempotent). - -- OPTIONS ------- -- ---shared:: +--shared[={false|true|umask|group|all|world|everybody}]:: --template=:: Only used with the 'init' command. These are passed directly to gitlink:git-init[1]. @@ -163,14 +139,15 @@ OPTIONS -r :: --revision :: -Only used with the 'fetch' command. +Used with the 'fetch' command. -Takes any valid -r svn would accept and passes it -directly to svn. -r: ranges and "{" DATE "}" syntax -is also supported. This is passed directly to svn, see svn -documentation for more details. +This allows revision ranges for partial/cauterized history +to be supported. $NUMBER, $NUMBER1:$NUMBER2 (numeric ranges), +$NUMBER:HEAD, and BASE:$NUMBER are all supported. -This can allow you to make partial mirrors when running fetch. +This can allow you to make partial mirrors when running fetch; +but is generally not recommended because history will be skipped +and lost. -:: --stdin:: @@ -276,36 +253,19 @@ ADVANCED OPTIONS ---------------- -- --b:: ---branch :: -Used with 'fetch', 'dcommit' or 'set-tree'. - -This can be used to join arbitrary git branches to remotes/git-svn -on new commits where the tree object is equivalent. - -When used with different GIT_SVN_ID values, tags and branches in -SVN can be tracked this way, as can some merges where the heads -end up having completely equivalent content. This can even be -used to track branches across multiple SVN _repositories_. - -This option may be specified multiple times, once for each -branch. - -config key: svn.branch - -i:: --id :: -This sets GIT_SVN_ID (instead of using the environment). See the -section on -'<>' -for more information on using GIT_SVN_ID. +This sets GIT_SVN_ID (instead of using the environment). This +allows the user to override the default refname to fetch from +when tracking a single URL. The 'log' and 'dcommit' commands +no longer require this switch as an argument. -R:: --svn-remote :: Specify the [svn-remote ""] section to use, - this allows multiple repositories to be tracked. - Default: git-svn + this allows SVN multiple repositories to be tracked. + Default: "svn" --follow-parent:: This is especially helpful when we're tracking a directory @@ -369,26 +329,21 @@ Tracking and contributing to a the trunk of a Subversion-managed project: Tracking and contributing to an entire Subversion-managed project (complete with a trunk, tags and branches): -See also: -'<>' ------------------------------------------------------------------------ # Initialize a repo (like git init): - git-svn multi-init http://svn.foo.org/project \ - -T trunk -b branches -t tags + git-svn init http://svn.foo.org/project -T trunk -b branches -t tags # Fetch remote revisions: - git-svn multi-fetch + git-svn fetch # Create your own branch of trunk to hack on: git checkout -b my-trunk remotes/trunk # Do some work, and then commit your new changes to SVN, as well as # automatically updating your working HEAD: - git-svn dcommit -i trunk + git-svn dcommit # Something has been committed to trunk, rebase the latest into your branch: - git-svn multi-fetch && git rebase remotes/trunk + git-svn fetch && git rebase remotes/trunk # Append svn:ignore settings of trunk to the default git exclude file: git-svn show-ignore -i trunk >> .git/info/exclude -# Check for new branches and tags (no arguments are needed): - git-svn multi-init ------------------------------------------------------------------------ REBASE VS. PULL/MERGE @@ -411,31 +366,9 @@ DESIGN PHILOSOPHY Merge tracking in Subversion is lacking and doing branched development with Subversion is cumbersome as a result. git-svn does not do automated merge/branch tracking by default and leaves it entirely up to -the user on the git side. - -[[tracking-multiple-repos]] -TRACKING MULTIPLE REPOSITORIES OR BRANCHES ------------------------------------------- -Because git-svn does not care about relationships between different -branches or directories in a Subversion repository, git-svn has a simple -hack to allow it to track an arbitrary number of related _or_ unrelated -SVN repositories via one git repository. Simply use the --id/-i flag or -set the GIT_SVN_ID environment variable to a name other other than -"git-svn" (the default) and git-svn will ignore the contents of the -$GIT_DIR/svn/git-svn directory and instead do all of its work in -$GIT_DIR/svn/$GIT_SVN_ID for that invocation. The interface branch will -be remotes/$GIT_SVN_ID, instead of remotes/git-svn. Any -remotes/$GIT_SVN_ID branch should never be modified by the user outside -of git-svn commands. - -If you're tracking a directory that has moved, or otherwise been -branched or tagged off of another directory in the repository and you -care about the full history of the project, then you can use -the --follow-parent option. - ------------------------------------------------- - git-svn fetch --follow-parent ------------------------------------------------- +the user on the git side. git-svn does however follow copy +history of the directory that it is tracking, however (much like +how 'svn log' works). BUGS ---- @@ -452,6 +385,33 @@ the possible corner cases (git doesn't do it, either). Renamed and copied files are fully supported if they're similar enough for git to detect them. +CONFIGURATION +------------- + +git-svn stores [svn-remote] configuration information in the +repository .git/config file. It is similar the core git +[remote] sections except 'fetch' keys do not accept glob +arguments; but they are instead handled by the 'branches' +and 'tags' keys. Since some SVN repositories are oddly +configured with multiple projects glob expansions such those +listed below are allowed: + +------------------------------------------------------------------------ +[svn-remote "project-a"] + url = http://server.org/svn + branches = branches/*/project-a:refs/remotes/project-a/branches/* + tags = tags/*/project-a:refs/remotes/project-a/tags/* + trunk = trunk/project-a:refs/remotes/project-a/trunk +------------------------------------------------------------------------ + +Keep in mind that the '*' (asterisk) wildcard of the local ref +(left of the ':') *must* be the farthest right path component; +however the remote wildcard may be anywhere as long as it's own +independent path componet (surrounded by '/' or EOL). This +type of configuration is not automatically created by 'init' and +should be manually entered with a text-editor or using +gitlink:git-config[1] + SEE ALSO -------- gitlink:git-rebase[1] -- cgit v1.2.3 From a81ed0b63edb0d473e17e078de2269b735156a79 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 18 Feb 2007 02:10:51 -0800 Subject: git-svn: documentation updates This documents the 'clone' and 'rebase' commands of git-svn. Additionaly, examples are updated to use them instead of the lower-level 'init' and 'fetch' commands. Signed-off-by: Eric Wong --- Documentation/git-svn.txt | 115 ++++++++++++++++++++++++++++++++-------------- 1 file changed, 81 insertions(+), 34 deletions(-) (limited to 'Documentation') diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt index ba3f7ce6f1..bd163cfad6 100644 --- a/Documentation/git-svn.txt +++ b/Documentation/git-svn.txt @@ -65,6 +65,32 @@ COMMANDS .git/config file may be specified as an optional command-line argument. +'clone':: + Runs 'init' and 'fetch'. It will automatically create a + directory based on the basename of the URL passed to it; + or if a second argument is passed; it will create a directory + and work within that. It accepts all arguments that the + 'init' and 'fetch' commands accept; with the exception of + '--fetch-all'. After a repository is cloned, the 'fetch' + command will be able to update revisions without affecting + the working tree; and the 'rebase' command will be able + to update the working tree with the latest changes. + +'rebase':: + This fetches revisions from the SVN parent of the current HEAD + and rebases the current (uncommitted to SVN) work against it. + + This works similarly to 'svn update' or 'git-pull' except that + it preserves linear history with 'git-rebase' instead of + 'git-merge' for ease of dcommit-ing with git-svn. + + This accepts all options that 'git-svn fetch' and 'git-rebase' + accepts. However '--fetch-all' only fetches from the current + [svn-remote], and not all [svn-remote] definitions. + + Like 'git-rebase'; this requires that the working tree be clean + and have no uncommitted changes. + 'dcommit':: Commit each diff from a specified head directly to the SVN repository, and then rebase or reset (depending on whether or @@ -234,7 +260,7 @@ config key: svn.repackflags -s:: --strategy=:: -These are only used with the 'dcommit' command. +These are only used with the 'dcommit' and 'rebase' commands. Passed directly to git-rebase when using 'dcommit' if a 'git-reset' cannot be used (see dcommit). @@ -276,6 +302,11 @@ no longer require this switch as an argument. config key: svn.followparent +-- +CONFIG FILE-ONLY OPTIONS +------------------------ +-- + svn.noMetadata: svn-remote..noMetadata: This gets rid of the git-svn-id: lines at the end of every commit. @@ -301,8 +332,27 @@ svn-remote..useSvmProps: URL and UUID, and use it when generating metadata in commit messages. - Using this conflicts with the 'noMetadata' option for - (hopefully) obvious reasons. +svn.useSvnsyncProps: +svn-remote..useSvnsyncprops: + Similar to the useSvmProps option; this is for users + of the svnsync(1) command distributed with SVN 1.4.x and + later. + +svn-remote..rewriteRoot + This allows users to create repositories from alternate + URLs. For example, an administrator could run git-svn on the + server locally (accessing via file://) but wish to distribute + the repository with a public http:// or svn:// URL in the + metadata so users of it will see the public URL. + + +Since the noMetadata, rewriteRoot, useSvnsyncProps and useSvmProps +options all affect the metadata generated and used by git-svn; they +*must* be set in the configuration file before any history is imported +and these settings should never be changed once they are set. + +Additionally, only one of these four options can be used per-svn-remote +section because they affect the 'git-svn-id:' metadata line. -- @@ -312,17 +362,20 @@ Basic Examples Tracking and contributing to a the trunk of a Subversion-managed project: ------------------------------------------------------------------------ -# Initialize a repo (like git init): - git-svn init http://svn.foo.org/project/trunk -# Fetch remote revisions: - git-svn fetch -# Create your own branch to hack on: - git checkout -b my-branch remotes/git-svn -# Do some work, and then commit your new changes to SVN, as well as -# automatically updating your working HEAD: +# Clone a repo (like git clone): + git-svn clone http://svn.foo.org/project/trunk +# Enter the newly cloned directory: + cd trunk +# You should be on master branch, double-check with git-branch + git branch +# Do some work and commit locally to git: + git commit ... +# Something is committed to SVN, rebase your local changes against the +# latest changes in SVN: + git-svn rebase +# Now commit your changes (that were committed previously using git) to SVN, +# as well as automatically updating your working HEAD: git-svn dcommit -# Something is committed to SVN, rebase the latest into your branch: - git-svn fetch && git rebase remotes/git-svn # Append svn:ignore settings to the default git exclude file: git-svn show-ignore >> .git/info/exclude ------------------------------------------------------------------------ @@ -331,19 +384,15 @@ Tracking and contributing to an entire Subversion-managed project (complete with a trunk, tags and branches): ------------------------------------------------------------------------ -# Initialize a repo (like git init): - git-svn init http://svn.foo.org/project -T trunk -b branches -t tags -# Fetch remote revisions: - git-svn fetch -# Create your own branch of trunk to hack on: - git checkout -b my-trunk remotes/trunk -# Do some work, and then commit your new changes to SVN, as well as -# automatically updating your working HEAD: - git-svn dcommit -# Something has been committed to trunk, rebase the latest into your branch: - git-svn fetch && git rebase remotes/trunk -# Append svn:ignore settings of trunk to the default git exclude file: - git-svn show-ignore -i trunk >> .git/info/exclude +# Clone a repo (like git clone): + git-svn clone http://svn.foo.org/project -T trunk -b branches -t tags +# View all branches and tags you have cloned: + git branch -r +# Reset your master to trunk (or any other branch, replacing 'trunk' +# with the appropriate name): + git reset --hard remotes/trunk +# You may only dcommit to one branch/tag/trunk at a time. The usage +# of dcommit/rebase/show-ignore should be teh same as above. ------------------------------------------------------------------------ REBASE VS. PULL/MERGE @@ -356,7 +405,7 @@ pulled or merged from. This is because the author favored If you use 'git-svn set-tree A..B' to commit several diffs and you do not have the latest remotes/git-svn merged into my-branch, you should -use 'git rebase' to update your work branch instead of 'git pull' or +use 'git-svn rebase' to update your work branch instead of 'git pull' or 'git merge'. 'pull/merge' can cause non-linear history to be flattened when committing into SVN, which can lead to merge commits reversing previous commits in SVN. @@ -373,17 +422,15 @@ how 'svn log' works). BUGS ---- -We ignore all SVN properties except svn:executable. Too difficult to -map them since we rely heavily on git write-tree being _exactly_ the -same on both the SVN and git working trees and I prefer not to clutter -working trees with metadata files. +We ignore all SVN properties except svn:executable. Any unhandled +properties are logged to $GIT_DIR/svn//unhandled.log Renamed and copied directories are not detected by git and hence not tracked when committing to SVN. I do not plan on adding support for this as it's quite difficult and time-consuming to get working for all -the possible corner cases (git doesn't do it, either). Renamed and -copied files are fully supported if they're similar enough for git to -detect them. +the possible corner cases (git doesn't do it, either). Committing +renamed and copied files are fully supported if they're similar enough +for git to detect them. CONFIGURATION ------------- -- cgit v1.2.3 From 0dfaf0a4e1905a9137d3f2f691620529aeb3b4fa Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 18 Feb 2007 02:34:09 -0800 Subject: git-svn: allow metadata options to be specified with 'init' and 'clone' Since the options that affect the way metadata is handled in git-svn, should be consistently set/unset throughout history imported by git-svn; it makes sense to allow the user to set certain options from the command-line that will write to the config file when initially creating the repository. Also, fix some formatting issues while we're updating documentation. Signed-off-by: Eric Wong --- Documentation/git-svn.txt | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) (limited to 'Documentation') diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt index bd163cfad6..da68f6d738 100644 --- a/Documentation/git-svn.txt +++ b/Documentation/git-svn.txt @@ -49,6 +49,15 @@ COMMANDS (--tags=project/tags') or a full url (--tags=https://foo.org/project/tags) +--no-metadata:: + Set the 'noMetadata' option in the [svn-remote] config. +--use-svm-props:: + Set the 'useSvmProps' option in the [svn-remote] config. +--use-svnsync-props:: + Set the 'useSvnsyncProps' option in the [svn-remote] config. +--rewrite-root=:: + Set the 'rewriteRoot' option in the [svn-remote] config. + --prefix= This allows one to specify a prefix which is prepended to the names of remotes if trunk/branches/tags are @@ -307,8 +316,8 @@ CONFIG FILE-ONLY OPTIONS ------------------------ -- -svn.noMetadata: -svn-remote..noMetadata: +svn.noMetadata:: +svn-remote..noMetadata:: This gets rid of the git-svn-id: lines at the end of every commit. If you lose your .git/svn/git-svn/.rev_db file, git-svn will not @@ -319,8 +328,8 @@ svn-remote..noMetadata: this, either. Using this conflicts with the 'useSvmProps' option for (hopefully) obvious reasons. -svn.useSvmProps: -svn-remote..useSvmProps: +svn.useSvmProps:: +svn-remote..useSvmProps:: This allows git-svn to re-map repository URLs and UUIDs from mirrors created using SVN::Mirror (or svk) for metadata. @@ -332,20 +341,19 @@ svn-remote..useSvmProps: URL and UUID, and use it when generating metadata in commit messages. -svn.useSvnsyncProps: -svn-remote..useSvnsyncprops: +svn.useSvnsyncProps:: +svn-remote..useSvnsyncprops:: Similar to the useSvmProps option; this is for users of the svnsync(1) command distributed with SVN 1.4.x and later. -svn-remote..rewriteRoot +svn-remote..rewriteRoot:: This allows users to create repositories from alternate URLs. For example, an administrator could run git-svn on the server locally (accessing via file://) but wish to distribute the repository with a public http:// or svn:// URL in the metadata so users of it will see the public URL. - Since the noMetadata, rewriteRoot, useSvnsyncProps and useSvmProps options all affect the metadata generated and used by git-svn; they *must* be set in the configuration file before any history is imported -- cgit v1.2.3 From a0d7fe3fcd790876e510c11459df95a0d595e2ad Mon Sep 17 00:00:00 2001 From: Sam Vilain Date: Fri, 23 Feb 2007 12:32:30 +1300 Subject: git-svn: document --username Also, it turns out that SVN::Ra doesn't attempt to deal with authentication or pass the username to ssh when doing svn+ssh:// URLs Signed-off-by: Eric Wong --- Documentation/git-svn.txt | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'Documentation') diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt index da68f6d738..cf094ca357 100644 --- a/Documentation/git-svn.txt +++ b/Documentation/git-svn.txt @@ -57,6 +57,11 @@ COMMANDS Set the 'useSvnsyncProps' option in the [svn-remote] config. --rewrite-root=:: Set the 'rewriteRoot' option in the [svn-remote] config. +--username=:: + For transports that SVN handles authentication for (http, + https, and plain svn), specify the username. For other + transports (eg svn+ssh://), you must include the username in + the URL, eg svn+ssh://foo@svn.bar.com/project --prefix= This allows one to specify a prefix which is prepended -- cgit v1.2.3 From bdd69c2f64d303f99b0f530263c3c04d329c2227 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Santi=20B=C3=A9jar?= Date: Fri, 23 Feb 2007 17:03:43 +0100 Subject: core.legacyheaders: Use the description used in RelNotes-1.5.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It explains what it does and why, and says how to use the new format. Signed-off-by: Santi BĂ©jar Signed-off-by: Junio C Hamano --- Documentation/config.txt | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'Documentation') diff --git a/Documentation/config.txt b/Documentation/config.txt index 4a22a00b71..9fec76935e 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -192,10 +192,17 @@ core.compression:: slowest. core.legacyheaders:: - A boolean which enables the legacy object header format in case - you want to interoperate with old clients accessing the object - database directly (where the "http://" and "rsync://" protocols - count as direct access). + A boolean which + changes the format of loose objects so that they are more + efficient to pack and to send out of the repository over git + native protocol, since v1.4.2. However, loose objects + written in the new format cannot be read by git older than + that version; people fetching from your repository using + older versions of git over dumb transports (e.g. http) + will also be affected. ++ +To let git use the new loose object format, you have to +set core.legacyheaders to false. core.packedGitWindowSize:: Number of bytes of a pack file to map into memory in a -- cgit v1.2.3 From d2dc6222d4e2f7fa5efc82175d14d60d7b804687 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sun, 25 Feb 2007 10:53:42 -0800 Subject: Add Release Notes to prepare for 1.5.0.2 Signed-off-by: Junio C Hamano --- Documentation/RelNotes-1.5.0.2.txt | 59 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 Documentation/RelNotes-1.5.0.2.txt (limited to 'Documentation') diff --git a/Documentation/RelNotes-1.5.0.2.txt b/Documentation/RelNotes-1.5.0.2.txt new file mode 100644 index 0000000000..4dc1344859 --- /dev/null +++ b/Documentation/RelNotes-1.5.0.2.txt @@ -0,0 +1,59 @@ +GIT v1.5.0.2 Release Notes +========================== + +Fixes since v1.5.0.1 +-------------------- + +* Bugfixes + + - 'git diff maint master next' did not correctly give combined + diff across three trees. + + - 'git fast-import' portability fix for Solaris. + + - 'git show-ref --verify' without arguments did not error out + but segfaulted. + + - 'git diff :tracked-file `pwd`/an-untracked-file' gave an extra + slashes after a/ and b/. + + - 'git format-patch' produced too long filenames if the commit + message had too long line at the beginning. + + - Running 'make all' and then without changing anything + running 'make install' still rebuilt some files. This + was inconvenient when building as yourself and then + installing as root (especially problematic when the source + directory is on NFS and root is mapped to nobody). + + - 'git-rerere' failed to deal with two unconflicted paths that + sorted next to each other. + + - 'git-rerere' attempted to open(2) a symlink and failed if + there was a conflict. Since a conflicting change to a + symlink would not benefit from rerere anyway, the command + now ignores conflicting changes to symlinks. + + - 'git-repack' did not like to pass more than 64 arguments + internally to underlying 'rev-list' logic, which made it + impossible to repack after accumulating many (small) packs + in the repository. + +* Documentation updates + + - added and clarified core.bare, core.legacyheaders configurations. + + - updated "git-clone --depth" documentation. + +* Assorted git-gui fixes. + + +-- +exec >/var/tmp/1 +O=v1.5.0.1-35-gffa84ff +echo O=`git describe maint` +git shortlog --no-merges $O..maint + +#Local Variables: +#mode: text +#End: -- cgit v1.2.3 From c5ddca1fff44896b7e94801da75392ccc234060c Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sun, 25 Feb 2007 23:26:11 -0800 Subject: Documentation: describe "-f/-t/-m" options to "git-remote add" Signed-off-by: Junio C Hamano --- Documentation/git-remote.txt | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'Documentation') diff --git a/Documentation/git-remote.txt b/Documentation/git-remote.txt index a60c31a315..a2ff8f098e 100644 --- a/Documentation/git-remote.txt +++ b/Documentation/git-remote.txt @@ -31,6 +31,19 @@ subcommands are available to perform operations on the remotes. Adds a remote named for the repository at . The command `git fetch ` can then be used to create and update remote-tracking branches /. ++ +With `-f` option, `git fetch ` is run immediately after +the remote information is set up. ++ +With `-t ` option, instead of the default glob +refspec for the remote to track all branches under +`$GIT_DIR/remotes//`, a refspec to track only `` +is created. You can give more than one `-t ` to track +multiple branche without grabbing all branches. ++ +With `-m ` option, `$GIT_DIR/remotes//HEAD` is set +up to point at remote's `` branch instead of whatever +branch the `HEAD` at the remote repository actually points at. 'show':: -- cgit v1.2.3 From 0d9b9ab1284ce125fd49cf7dbf4d28e0540cf035 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sun, 25 Feb 2007 23:58:50 -0800 Subject: GIT 1.5.0.2 Signed-off-by: Junio C Hamano --- Documentation/RelNotes-1.5.0.2.txt | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) (limited to 'Documentation') diff --git a/Documentation/RelNotes-1.5.0.2.txt b/Documentation/RelNotes-1.5.0.2.txt index 4dc1344859..b061e50ff0 100644 --- a/Documentation/RelNotes-1.5.0.2.txt +++ b/Documentation/RelNotes-1.5.0.2.txt @@ -6,6 +6,14 @@ Fixes since v1.5.0.1 * Bugfixes + - Automated merge conflict handling when changes to symbolic + links conflicted were completely broken. The merge-resolve + strategy created a regular file with conflict markers in it + in place of the symbolic link. The default strategy, + merge-recursive was even more broken. It removed the path + that was pointed at by the symbolic link. Both of these + problems have been fixed. + - 'git diff maint master next' did not correctly give combined diff across three trees. @@ -39,21 +47,19 @@ Fixes since v1.5.0.1 impossible to repack after accumulating many (small) packs in the repository. + - 'git-diff' to review the combined diff during a conflicted + merge were not reading the working tree version correctly + when changes to a symbolic link conflicted. It should have + read the data using readlink(2) but read from the regular + file the symbolic link pointed at. + + - 'git-remote' did not like period in a remote's name. + * Documentation updates - added and clarified core.bare, core.legacyheaders configurations. - updated "git-clone --depth" documentation. -* Assorted git-gui fixes. - --- -exec >/var/tmp/1 -O=v1.5.0.1-35-gffa84ff -echo O=`git describe maint` -git shortlog --no-merges $O..maint - -#Local Variables: -#mode: text -#End: +* Assorted git-gui fixes. -- cgit v1.2.3 From 047f636d903c773e237f684826cc68c79a1a0075 Mon Sep 17 00:00:00 2001 From: "Aneesh Kumar K.V" Date: Sat, 24 Feb 2007 21:02:56 +0530 Subject: Documentation: document remote..tagopt Update config.txt with info regarding tagopt option Signed-off-by: Aneesh Kumar K.V Signed-off-by: Junio C Hamano --- Documentation/config.txt | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Documentation') diff --git a/Documentation/config.txt b/Documentation/config.txt index 6309d89b4b..d2b4a05ca5 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -483,6 +483,10 @@ remote..uploadpack:: The default program to execute on the remote side when fetching. See option \--exec of gitlink:git-fetch-pack[1]. +remote..tagopt:: + Setting this value to --no-tags disables automatic tag following when fetching + from remote + remotes.:: The list of remotes which are fetched by "git remote update ". See gitlink:git-remote[1]. -- cgit v1.2.3 From c260d790c85c07a5f50235f664c36725deedfb10 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Mon, 26 Feb 2007 01:16:01 -0800 Subject: Documentation: link in 1.5.0.2 material to the top documentation page. Signed-off-by: Junio C Hamano --- Documentation/git.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'Documentation') diff --git a/Documentation/git.txt b/Documentation/git.txt index aa3acc0466..9a74747989 100644 --- a/Documentation/git.txt +++ b/Documentation/git.txt @@ -35,7 +35,9 @@ ifdef::stalenotes[] You are reading the documentation for the latest version of git. Documentation for older releases are available here: -* link:v1.5.0.1/git.html[documentation for release 1.5.0.1] +* link:v1.5.0.2/git.html[documentation for release 1.5.0.2] + +* link:v1.5.0.2/RelNotes-1.5.0.2.txt[release notes for 1.5.0.2] * link:v1.5.0.1/RelNotes-1.5.0.1.txt[release notes for 1.5.0.1] -- cgit v1.2.3