This re-roll of Michael Haggerty's worktree-related documentation
tweaks[1] takes my review comments into account and adds one new patch.
A v1 to v2 interdiff is included below.
Changes since v1:
patch 1/5: fix additional instances of "worktree" -> "working tree"
patch 2/5: don't rename "git worktree lock" command to "git worktree
locked" when renaming incorrect worktrees/<id>/lock to
worktrees/<id>/locked
patch 4/5: further refine .git/worktrees and .git/worktrees/<id>/locked
descriptions
patch 5/5 (new/optional): based upon a review comment tangent, rename
config variable gc.pruneWorktreesExpire to gc.worktreePruneExpire;
can be dropped if not deemed worthwhile
A couple of Michael's v1 patches were also dropped:
patch 2/6: these changes are already in master: 4d5a3c5
(Documentation/git-worktree: fix stale "git checkout --to"
references, 2015-07-16)
patch 4/6: incorrectly dropped unimplemented user-interface command
"git worktree lock" from BUGS section, conflating it with low-level
locking functionality which is already implemented
A few commit messages were also reworded.
[1]: http://thread.gmane.org/gmane.comp.version-control.git/274190
Eric Sunshine (1):
config: rename "gc.pruneWorktreesExpire" to "gc.worktreePruneExpire"
Michael Haggerty (4):
Documentation/git-worktree: consistently use term "linked working
tree"
Documentation/git-worktree: fix incorrect reference to file "locked"
Documentation/config: fix stale "git prune --worktree" reference
Documentation/git-worktree: wordsmith worktree-related manpages
Documentation/config.txt | 12 +++++-----
Documentation/git-worktree.txt | 40 +++++++++++++++++-----------------
Documentation/gitrepository-layout.txt | 22 +++++++++----------
builtin/gc.c | 2 +-
4 files changed, 38 insertions(+), 38 deletions(-)
--
2.5.0.rc2.386.g87d813d
---- 8< ----
diff --git a/Documentation/config.txt b/Documentation/config.txt
index 10bc351..746d292 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -1291,7 +1291,7 @@ gc.pruneExpire::
"now" may be used to disable this grace period and always prune
unreachable objects immediately.
-gc.pruneWorktreesExpire::
+gc.worktreePruneExpire::
When 'git gc' is run, it calls
'git worktree prune --expire 3.months.ago'.
This config variable can be used to set a different grace
diff --git a/Documentation/git-worktree.txt b/Documentation/git-worktree.txt
index dfac758..3234459 100644
--- a/Documentation/git-worktree.txt
+++ b/Documentation/git-worktree.txt
@@ -3,7 +3,7 @@ git-worktree(1)
NAME
----
-git-worktree - Manage multiple worktrees
+git-worktree - Manage multiple working trees
SYNOPSIS
@@ -15,7 +15,7 @@ SYNOPSIS
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
out more than one branch at a time. With `git worktree add` a new working
@@ -27,7 +27,7 @@ bare repository) and zero or more linked working trees.
When you are done with a linked working tree you can simply delete it.
The working tree's administrative files in the repository (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
clean up any stale administrative files.
@@ -64,22 +64,22 @@ OPTIONS
-f::
--force::
- By default, `add` refuses to create a new worktree when `<branch>`
- is already checked out by another worktree. This option overrides
+ By default, `add` refuses to create a new working tree when `<branch>`
+ is already checked out by another working tree. This option overrides
that safeguard.
-b <new-branch>::
-B <new-branch>::
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.
By default, `-b` refuses to create a new branch if it already
exists. `-B` overrides this safeguard, resetting `<new-branch>` to
`<branch>`.
--detach::
- With `add`, detach HEAD in the new worktree. See "DETACHED HEAD" in
- linkgit:git-checkout[1].
+ With `add`, detach HEAD in the new working tree. See "DETACHED HEAD"
+ in linkgit:git-checkout[1].
-n::
--dry-run::
@@ -91,7 +91,7 @@ OPTIONS
With `prune`, report all removals.
--expire <time>::
- With `prune`, only expire unused worktrees older than <time>.
+ With `prune`, only expire unused working trees older than <time>.
DETAILS
-------
@@ -138,9 +138,9 @@ EXAMPLES
--------
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
-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,
-and other bits and pieces strewn around) that you don't want to risk
+linkgit:git-stash[1] to store your changes away temporarily, however, your
+working tree is in such a state of disarray (with new, moved, and removed
+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 working tree to
make the emergency fix, remove it when done, and then resume your earlier
refactoring session.
@@ -165,9 +165,11 @@ git-worktree could provide more automation for tasks
currently
performed manually, such as:
- `remove` to remove a linked working tree and its administrative files (and
- warn if the worktree is dirty)
-- `mv` to move or rename a worktree and update its administrative files
+ warn if the working tree is dirty)
+- `mv` to move or rename a working tree and update its administrative files
- `list` to list linked working trees
+- `lock` to prevent automatic pruning of administrative files (for instance,
+ for a working tree on a portable device)
GIT
---
diff --git a/Documentation/gitrepository-layout.txt
b/Documentation/gitrepository-layout.txt
index fe7d4bb..577ee84 100644
--- a/Documentation/gitrepository-layout.txt
+++ b/Documentation/gitrepository-layout.txt
@@ -251,8 +251,8 @@ modules::
Contains the git-repositories of the submodules.
worktrees::
- Contains worktree-specific information for linked working
- trees. Each subdirectory contains the worktree-related
+ Contains administrative data for linked
+ working trees. Each subdirectory contains the working tree-related
part of a linked working tree. This directory is ignored if
$GIT_COMMON_DIR is set, in which case
"$GIT_COMMON_DIR/worktrees" will be used instead.
@@ -267,9 +267,9 @@ worktrees/<id>/gitdir::
worktrees/<id>/locked::
If this file exists, the linked working tree may be on a
portable device and not available. The presence of this file
- prevents `worktrees/<id>` from being pruned by `git worktree
- prune`. The file may contain a string explaining why the
- repository is locked.
+ prevents `worktrees/<id>` from being pruned either automatically
+ or manually by `git worktree prune`. The file may contain a string
+ explaining why the repository is locked.
worktrees/<id>/link::
If this file exists, it is a hard link to the linked .git
diff --git a/builtin/gc.c b/builtin/gc.c
index 4957c39..bcc75d9 100644
--- a/builtin/gc.c
+++ b/builtin/gc.c
@@ -85,7 +85,7 @@ static void gc_config(void)
git_config_get_int("gc.autopacklimit", &gc_auto_pack_limit);
git_config_get_bool("gc.autodetach", &detach_auto);
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);
}
---- 8< ----
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html