commit b078d5c4c0672adb3c9c00df78924f27ad0faf16
from: Stefan Sperling A reference associates a name with an object ID. A prominent use
of references is providing names to branches in the repository by pointing
at commit objects which represent the current tip commit of a branch.
- Because references may point to arbitrary object IDs their use is not
+ Because references may point to arbitrary object IDs, their use is not
limited to branches. The name is a UTF-8 string with the following disallowed
characters: ‘ ’ (space), ~ (tilde), ^ (caret), :
@@ -209,7 +209,7 @@
blob - f48e9d886be4a6d54c86f12344fc56bc00bfc4f3
blob + ac5033a2f55810657d78797d1095a899426ff2bc
--- got-worktree.5.html
+++ got-worktree.5.html
@@ -142,7 +142,7 @@
the current base commit in the Git repository. The presence of this
reference prevents the Git garbage collector and
-
November 23, 2021
+ March 23, 2022
OpenBSD 7.0
gotadmin
cleanup
from discarding the base commit and any objects it refers to.
- When a work tree is no longer needed its reference can be deleted from the
+ When a work tree is no longer needed, its reference can be deleted from the
Git repository with got ref -d
.
November 23, 2021 | +March 23, 2022 | OpenBSD 7.0 |
cl
)
Clone a Git repository at the specified repository-URL
into the specified directory. If no
- directory is specified the directory name will be
+ directory is specified, the directory name will be
derived from the name of the cloned repository. got
clone
will refuse to run if the directory
already exists.
@@ -283,7 +283,7 @@
branches in the “refs/heads/” namespace, merging incoming
changes with the changes on those branches as necessary.
If the repository was created as a mirror with
- got clone -m
then all branches in the
+ got clone -m
, then all branches in the
“refs/heads/” namespace will be updated directly to match
the corresponding branches in the remote repository. If those branches
contained local commits, these commits will no longer be reachable via a
@@ -431,7 +431,7 @@
If the specified commit is not
contained in the selected branch, a different branch which contains
this commit must be specified with the -b
- option. If no such branch is known a new branch must be created for
+ option. If no such branch is known, a new branch must be created for
this commit with got branch
before
got checkout
can be used. Checking out work
trees with an unknown branch is intentionally not supported.
Files which already contain merge conflicts will not be
updated to avoid further complications. Such files will be updated when
got update
is run again after merge conflicts
- have been resolved. If the conflicting changes are no longer needed
+ have been resolved. If the conflicting changes are no longer needed,
affected files can be reverted with got revert
before running got update
again.
Show the status of each affected file, using the following @@ -744,7 +744,7 @@ search-pattern
-P
then the file paths
+ used together with -P
, then the file paths
changed by a commit can be matched as well. Regular expression syntax
is documented in re_format(7).-r
@@ -983,9 +983,9 @@
branch
[-c
commit]
[-r
repository-path]
- [-l
] [-d
- name] [-n
]
- [name]-l
] [-t
]
+ [-d
name]
+ [-n
] [name](alias:
br
)
got branch
command creates references in this
namespace only.
- When deleting branches the specified +
When deleting branches, the specified name is searched in the “refs/heads” - reference namespace first. If no corresponding branch is found the + reference namespace first. If no corresponding branch is found, the “refs/remotes” namespace will be searched next.
If invoked in a work tree without any arguments, print the name of the work tree's current branch.
@@ -1179,8 +1179,9 @@ follows:-f
-k
-R
patch
+ [-n
] [patchfile](alias:
+ pa
)
The patch must be in the unified diff format as produced by
+ got diff
, git-diff(1), or by
+ diff(1) and cvs(1) diff when invoked
+ with their -u
options. If no
+ patchfile argument is provided, read unified diff
+ data from standard input instead.
If the patchfile contains multiple + patches, then attempt to apply each of them in sequence.
+Show the status of each affected file, using the following + status codes:
+M | +file was modified | +
D | +file was deleted | +
A | +file was added | +
# | +failed to patch the file | +
If a change does not match at its exact line number, attempt + to apply it somewhere else in the file if a good spot can be found. + Otherwise, the patch will fail to apply.
+got
patch
will
+ refuse to apply a patch if certain preconditions are not met. Files to
+ be deleted must already be under version control, and must not have been
+ scheduled for deletion already. Files to be added must not yet be under
+ version control and must not already be present on disk. Files to be
+ modified must already be under version control and may not contain
+ conflict markers.
If an error occurs, the patch
+ operation will be aborted. Any changes made to the work tree up to this
+ point will be left behind. Such changes can be viewed with
+ got diff
and can be reverted with
+ got revert
if needed.
The options for got patch
are as
+ follows:
-n
revert
@@ -1218,9 +1280,9 @@
File contents will be overwritten with those contained in the work tree's
base commit. There is no way to bring discarded changes back after
got revert
!
- If a file was added with got add
it
+
If a file was added with got add
, it
will become an unversioned file again. If a file was deleted with
- got remove
it will be restored.
got remove
, it will be restored.
The options for got revert
are as
follows:
got revert
.
got cherrypick
will refuse to run if
certain preconditions are not met. If the work tree contains multiple
- base commits it must first be updated to a single base commit with
+ base commits, it must first be updated to a single base commit with
got update
. If any relevant files already
contain merge conflicts, these conflicts must be resolved first.
got revert
.
got backout
will refuse to run if
certain preconditions are not met. If the work tree contains multiple
- base commits it must first be updated to a single base commit with
+ base commits, it must first be updated to a single base commit with
got update
. If any relevant files already
contain merge conflicts, these conflicts must be resolved first.
If merge conflicts occur the rebase operation is interrupted +
If merge conflicts occur, the rebase operation is interrupted and may be continued once conflicts have been resolved. If any files with destined changes are found to be missing or unversioned, or if files could not be deleted due to differences in deleted content, the @@ -1673,8 +1735,8 @@ elided when the rebase operation continues.
got rebase
will refuse to run if
certain preconditions are not met. If the work tree is not yet fully
- updated to the tip commit of its branch then the work tree must first be
- updated with got update
. If changes have been
+ updated to the tip commit of its branch, then the work tree must first
+ be updated with got update
. If changes have been
staged with got stage
, these changes must first
be committed with got commit
or unstaged with
got unstage
. If the work tree contains local
@@ -1688,10 +1750,10 @@
rebase operation is in progress. Other commands which manipulate the
work tree may be used for conflict resolution purposes.
If the specified branch is already based
- on the work tree's current branch then no commits need to be rebased and
- got rebase
will simply switch the work tree to
- the specified branch and update files in the work
- tree accordingly.
got rebase
will simply switch the work tree
+ to the specified branch and update files in the
+ work tree accordingly.
The options for got rebase
are as
follows:
he
)
Edit commit history between the work tree's current base commit and the tip
commit of the work tree's current branch.
- Before starting a histedit
operation
+
Before starting a histedit
operation,
the work tree's current branch must be set with got
update -b
to the branch which should be edited, unless this
branch is already the current branch of the work tree. The tip of this
@@ -1848,12 +1910,12 @@
If merge conflicts occur the histedit operation is interrupted - and may be continued once conflicts have been resolved. If any files - with destined changes are found to be missing or unversioned, or if - files could not be deleted due to differences in deleted content, the - histedit operation will be interrupted to prevent potentially incomplete - changes from being committed to the repository without user +
If merge conflicts occur, the histedit operation is
+ interrupted and may be continued once conflicts have been resolved. If
+ any files with destined changes are found to be missing or unversioned,
+ or if files could not be deleted due to differences in deleted content,
+ the histedit operation will be interrupted to prevent potentially
+ incomplete changes from being committed to the repository without user
intervention. The work tree may be modified as desired and the histedit
operation can be continued once the changes present in the work tree are
considered complete. Alternatively, the histedit operation may be
@@ -1866,7 +1928,7 @@
certain preconditions are not met. If the work tree's current branch is
not in the “refs/heads/” reference namespace, the history
of the branch may not be edited. If the work tree contains multiple base
- commits it must first be updated to a single base commit with
+ commits, it must first be updated to a single base commit with
got update
. If changes have been staged with
got stage
, these changes must first be committed
with got commit
or unstaged with
@@ -1996,8 +2058,8 @@
branch must have been rebased onto the work tree's
current branch with got rebase
before it can be
integrated, in order to linearize commit history and resolve merge
- conflicts. If the work tree contains multiple base commits it must first
- be updated to a single base commit with got
+ conflicts. If the work tree contains multiple base commits, it must
+ first be updated to a single base commit with
got
update
. If changes have been staged with got
stage
, these changes must first be committed with
got commit
or unstaged with got
@@ -2088,16 +2150,16 @@
branch instead. If the work tree is not yet fully
updated to the tip commit of its branch, then the work tree must first
be updated with
got update
. If the work tree
- contains multiple base commits it must first be updated to a single base
- commit with got update
. If changes have been
- staged with got stage
, these changes must first
- be committed with got commit
or unstaged with
- got unstage
. If the work tree contains local
- changes, these changes must first be committed with got
- commit
or reverted with got revert
. If
- the branch contains changes to files outside of
- the work tree's path prefix, the work tree cannot be used to merge this
- branch.
got update
. If changes have
+ been staged with got stage
, these changes must
+ first be committed with got commit
or unstaged
+ with got unstage
. If the work tree contains
+ local changes, these changes must first be committed with
+ got commit
or reverted with got
+ revert
. If the branch contains changes to
+ files outside of the work tree's path prefix, the work tree cannot be
+ used to merge this branch.
The got update
, got
commit
, got rebase
, got
histedit
, got integrate
, and
@@ -2113,7 +2175,7 @@
-c
-n
-n
got merge -c
.
@@ -2171,7 +2233,7 @@
-l
-p
Changes on the “unified-buffer-cache” branch can now
be made visible on the “master” branch with
got integrate
. Because the rebase operation switched
- the work tree to the “unified-buffer-cache” branch the work
+ the work tree to the “unified-buffer-cache” branch, the work
tree must be switched back to the “master” branch first:
$ got update -b master
$ got update -c
origin/master
$ got histedit -m
If the remote repository offers write access local changes on the +
If the remote repository offers write access, local changes on the
“master” branch can be sent to the remote repository with
got send
. Usually, got send
can be run without further arguments. The arguments shown here match
@@ -2642,7 +2704,7 @@
$ got send -b master
origin
If the remote repository requires the HTTPS protocol the +
If the remote repository requires the HTTPS protocol, the git-push(1) command must be used instead:
$ cd /var/git/src.git
November 23, 2021 | +March 23, 2022 | OpenBSD 7.0 |
November 23, 2021 | +March 23, 2022 | OpenBSD 7.0 |
Each object contained in the pack file will be displayed on a single line. The information shown includes the object ID, object type, object offset, and object size.
-If a packed object is deltified against another object the +
If a packed object is deltified against another object, the delta base will be shown as well. For offset deltas, the delta base is identified via an offset into the pack file. For reference deltas, the delta base is identified via an object ID.
The provided packfile-path must be located within the objects/pack/ directory of - the repository and should end in .pack.
+ the repository and should end in .pack. The + corresponding pack index must exist and can be created with +gotadmin indexpack
if it is missing.
The options for gotadmin listpack
are
as follows:
Some Git repositories contain pack index files which lack a
corresponding pack file, which is an inconsistent repository state. In
such cases, gotadmin cleanup -p -n
will display
- a list of affected pack index files. Whenever possible the missing pack
+ a list of affected pack index files. Whenever possible, the missing pack
files should be restored. If restoring missing pack files is not
- possible then affected pack index files can be removed with
+ possible, then affected pack index files can be removed with
gotadmin cleanup -p
.
The “preciousObjects” Git extension is intended to prevent the removal of objects from a repository. @@ -302,7 +304,7 @@
November 23, 2021 | +March 23, 2022 | OpenBSD 7.0 |
November 23, 2021 | +March 23, 2022 | OpenBSD 7.0 |
November 23, 2021 | +March 23, 2022 | OpenBSD 7.0 |
Backspace
.Enter,
Space
TOG_COLOR_REFS_BACKUP
November 23, 2021 | +March 23, 2022 | OpenBSD 7.0 |