clean up man page

This commit is contained in:
Joey Hess 2024-05-28 15:29:38 -04:00
parent 80d236b789
commit cb7f15e733
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38

View file

@ -36,35 +36,34 @@ When using the shorthand "annex::" url, the full url will be displayed
each time you git pull or push, when it's possible for git-annex to each time you git pull or push, when it's possible for git-annex to
determine it. determine it.
When a special remote needs some credentials to be used, they are not # CONFLICTING PUSHES
included in the URL, and will need to be provided when cloning from the
special remote. That is typically done by setting environment variables.
Some special remotes may also need environment variables to be set when
pulling or pushing.
Like any git repository, a git repository stored on a special remote can Like any git repository, a git repository stored on a special remote can
have conflicting things pushed to it from different places. This mostly have conflicting things pushed to it from different places. This mostly
works the same as any other git repository, eg a push that overwrites other works the same as any other git repository, eg a push that overwrites other
work will be prevented unless forced. However, it is possible, when work will be prevented unless forced.
conflicting pushes are being done at the same time, for one of the pushes
to be overwritten by the other one. In this situation, the overwritten However, it is possible, when conflicting pushes are being done at the same
push will appear to have succeeded, but pulling later will show the true time, for one of the pushes to be overwritten by the other one. In this
situation. situation, the overwritten push will appear to have succeeded, but pulling
later will show the true situation.
# REPOSITORY FORMAT
The git repository is stored in the special remote using special annex objects The git repository is stored in the special remote using special annex objects
with names starting with "GITMANIFEST" and "GITBUNDLE". For details, see: with names starting with "GITMANIFEST" and "GITBUNDLE". For details, see:
<https://git-annex.branchable.com/internals/git-remote-annex/> <https://git-annex.branchable.com/internals/git-remote-annex/>
Pushes to a special remote are usually done incrementally. However, Pushes to a special remote are usually done incrementally. However,
sometimes the whole git repository (but not the annex) needs to be sometimes the whole git repository is re-uploaded. That is done when force
re-uploaded. That is done when force pushing a ref, or deleting a pushing a ref, or deleting a ref from the remote. It's also done when too
ref from the remote. It's also done when too many git bundles many git bundles accumulate in the special remote, as configured by the
accumulate in the special remote, as configured by the
`remote.<name>.annex-max-git-bundles` git config. `remote.<name>.annex-max-git-bundles` git config.
Note that a re-upload of the repository does not delete old GITBUNDLE Note that a re-upload of the repository does not delete old GITBUNDLE
objects from it. This means that refs pushed to the special objects from it. This means that refs pushed to the special
remote can still be accessed even after deleting or overwriting them. remote can still be accessed even after deleting or overwriting them.
A push that deletes every ref from the special remote will delete all A push that deletes every ref from the special remote will delete all
the accumulated GITBUNDLE objects. But of course, making such a push the accumulated GITBUNDLE objects. But of course, making such a push
means that someone who clones from the special remote at that point in time means that someone who clones from the special remote at that point in time