Merge branch 'es/worktree-add'

Remove remaining cruft from  "git checkout --to", which
transitioned to "git worktree add".

* es/worktree-add:
  config: rename "gc.pruneWorktreesExpire" to "gc.worktreePruneExpire"
  Documentation/git-worktree: wordsmith worktree-related manpages
  Documentation/config: fix stale "git prune --worktree" reference
  Documentation/git-worktree: fix incorrect reference to file "locked"
  Documentation/git-worktree: consistently use term "linked working tree"
This commit is contained in:
Junio C Hamano 2015-08-12 14:09:54 -07:00
commit c1e5ca90db
4 changed files with 38 additions and 38 deletions

View file

@ -1302,12 +1302,12 @@ gc.pruneExpire::
"now" may be used to disable this grace period and always prune "now" may be used to disable this grace period and always prune
unreachable objects immediately. unreachable objects immediately.
gc.pruneWorktreesExpire:: gc.worktreePruneExpire::
When 'git gc' is run, it will call When 'git gc' is run, it calls
'prune --worktrees --expire 3.months.ago'. 'git worktree prune --expire 3.months.ago'.
Override the grace period with this config variable. The value This config variable can be used to set a different grace
"now" may be used to disable the grace period and prune period. The value "now" may be used to disable the grace
$GIT_DIR/worktrees immediately. period and prune $GIT_DIR/worktrees immediately.
gc.reflogExpire:: gc.reflogExpire::
gc.<pattern>.reflogExpire:: gc.<pattern>.reflogExpire::

View file

@ -3,7 +3,7 @@ git-worktree(1)
NAME NAME
---- ----
git-worktree - Manage multiple worktrees git-worktree - Manage multiple working trees
SYNOPSIS SYNOPSIS
@ -15,7 +15,7 @@ SYNOPSIS
DESCRIPTION DESCRIPTION
----------- -----------
Manage multiple worktrees attached to the same repository. Manage multiple working trees attached to the same repository.
A git repository can support multiple working trees, allowing you to check A git repository can support multiple working trees, allowing you to check
out more than one branch at a time. With `git worktree add` a new working out more than one branch at a time. With `git worktree add` a new working
@ -27,19 +27,19 @@ bare repository) and zero or more linked working trees.
When you are done with a linked working tree you can simply delete it. When you are done with a linked working tree you can simply delete it.
The working tree's administrative files in the repository (see The working tree's administrative files in the repository (see
"DETAILS" below) will eventually be removed automatically (see "DETAILS" below) will eventually be removed automatically (see
`gc.pruneworktreesexpire` in linkgit::git-config[1]), or you can run `gc.worktreePruneExpire` in linkgit::git-config[1]), or you can run
`git worktree prune` in the main or any linked working tree to `git worktree prune` in the main or any linked working tree to
clean up any stale administrative files. clean up any stale administrative files.
If you move a linked working directory to another file system, or If you move a linked working tree to another file system, or
within a file system that does not support hard links, you need to run within a file system that does not support hard links, you need to run
at least one git command inside the linked working directory at least one git command inside the linked working tree
(e.g. `git status`) in order to update its administrative files in the (e.g. `git status`) in order to update its administrative files in the
repository so that they do not get automatically pruned. repository so that they do not get automatically pruned.
If a linked working tree is stored on a portable device or network share If a linked working tree is stored on a portable device or network share
which is not always mounted, you can prevent its administrative files from which is not always mounted, you can prevent its administrative files from
being pruned by creating a file named 'lock' alongside the other being pruned by creating a file named 'locked' alongside the other
administrative files, optionally containing a plain text reason that administrative files, optionally containing a plain text reason that
pruning should be suppressed. See section "DETAILS" for more information. pruning should be suppressed. See section "DETAILS" for more information.
@ -64,22 +64,22 @@ OPTIONS
-f:: -f::
--force:: --force::
By default, `add` refuses to create a new worktree when `<branch>` By default, `add` refuses to create a new working tree when `<branch>`
is already checked out by another worktree. This option overrides is already checked out by another working tree. This option overrides
that safeguard. that safeguard.
-b <new-branch>:: -b <new-branch>::
-B <new-branch>:: -B <new-branch>::
With `add`, create a new branch named `<new-branch>` starting at With `add`, create a new branch named `<new-branch>` starting at
`<branch>`, and check out `<new-branch>` into the new worktree. `<branch>`, and check out `<new-branch>` into the new working tree.
If `<branch>` is omitted, it defaults to HEAD. If `<branch>` is omitted, it defaults to HEAD.
By default, `-b` refuses to create a new branch if it already By default, `-b` refuses to create a new branch if it already
exists. `-B` overrides this safeguard, resetting `<new-branch>` to exists. `-B` overrides this safeguard, resetting `<new-branch>` to
`<branch>`. `<branch>`.
--detach:: --detach::
With `add`, detach HEAD in the new worktree. See "DETACHED HEAD" in With `add`, detach HEAD in the new working tree. See "DETACHED HEAD"
linkgit:git-checkout[1]. in linkgit:git-checkout[1].
-n:: -n::
--dry-run:: --dry-run::
@ -91,7 +91,7 @@ OPTIONS
With `prune`, report all removals. With `prune`, report all removals.
--expire <time>:: --expire <time>::
With `prune`, only expire unused worktrees older than <time>. With `prune`, only expire unused working trees older than <time>.
DETAILS DETAILS
------- -------
@ -139,9 +139,9 @@ EXAMPLES
You are in the middle of a refactoring session and your boss comes in and You are in the middle of a refactoring session and your boss comes in and
demands that you fix something immediately. You might typically use demands that you fix something immediately. You might typically use
linkgit:git-stash[1] to store your changes away temporarily, however, your linkgit:git-stash[1] to store your changes away temporarily, however, your
worktree is in such a state of disarray (with new, moved, and removed files, working tree is in such a state of disarray (with new, moved, and removed
and other bits and pieces strewn around) that you don't want to risk files, and other bits and pieces strewn around) that you don't want to risk
disturbing any of it. Instead, you create a temporary linked worktree to disturbing any of it. Instead, you create a temporary linked working tree to
make the emergency fix, remove it when done, and then resume your earlier make the emergency fix, remove it when done, and then resume your earlier
refactoring session. refactoring session.
@ -164,12 +164,12 @@ checkouts of a superproject.
git-worktree could provide more automation for tasks currently git-worktree could provide more automation for tasks currently
performed manually, such as: performed manually, such as:
- `remove` to remove a linked worktree and its administrative files (and - `remove` to remove a linked working tree and its administrative files (and
warn if the worktree is dirty) warn if the working tree is dirty)
- `mv` to move or rename a worktree and update its administrative files - `mv` to move or rename a working tree and update its administrative files
- `list` to list linked worktrees - `list` to list linked working trees
- `lock` to prevent automatic pruning of administrative files (for instance, - `lock` to prevent automatic pruning of administrative files (for instance,
for a worktree on a portable device) for a working tree on a portable device)
GIT GIT
--- ---

View file

@ -251,25 +251,25 @@ modules::
Contains the git-repositories of the submodules. Contains the git-repositories of the submodules.
worktrees:: worktrees::
Contains worktree specific information of linked Contains administrative data for linked
checkouts. Each subdirectory contains the worktree-related working trees. Each subdirectory contains the working tree-related
part of a linked checkout. This directory is ignored if part of a linked working tree. This directory is ignored if
$GIT_COMMON_DIR is set and "$GIT_COMMON_DIR/worktrees" will be $GIT_COMMON_DIR is set, in which case
used instead. "$GIT_COMMON_DIR/worktrees" will be used instead.
worktrees/<id>/gitdir:: worktrees/<id>/gitdir::
A text file containing the absolute path back to the .git file A text file containing the absolute path back to the .git file
that points to here. This is used to check if the linked that points to here. This is used to check if the linked
repository has been manually removed and there is no need to repository has been manually removed and there is no need to
keep this directory any more. mtime of this file should be keep this directory any more. The mtime of this file should be
updated every time the linked repository is accessed. updated every time the linked repository is accessed.
worktrees/<id>/locked:: worktrees/<id>/locked::
If this file exists, the linked repository may be on a If this file exists, the linked working tree may be on a
portable device and not available. It does not mean that the portable device and not available. The presence of this file
linked repository is gone and `worktrees/<id>` could be prevents `worktrees/<id>` from being pruned either automatically
removed. The file's content contains a reason string on why or manually by `git worktree prune`. The file may contain a string
the repository is locked. explaining why the repository is locked.
worktrees/<id>/link:: worktrees/<id>/link::
If this file exists, it is a hard link to the linked .git If this file exists, it is a hard link to the linked .git

View file

@ -85,7 +85,7 @@ static void gc_config(void)
git_config_get_int("gc.autopacklimit", &gc_auto_pack_limit); git_config_get_int("gc.autopacklimit", &gc_auto_pack_limit);
git_config_get_bool("gc.autodetach", &detach_auto); git_config_get_bool("gc.autodetach", &detach_auto);
git_config_date_string("gc.pruneexpire", &prune_expire); git_config_date_string("gc.pruneexpire", &prune_expire);
git_config_date_string("gc.pruneworktreesexpire", &prune_worktrees_expire); git_config_date_string("gc.worktreepruneexpire", &prune_worktrees_expire);
git_config(git_default_config, NULL); git_config(git_default_config, NULL);
} }