5df89d58c7
Split out two new commands, git-annex pull and git-annex push. Those plus a git commit are equivilant to git-annex sync. In a sense, git-annex sync conflates 3 things, and it would have been better to have push and pull from the beginning and not sync. Although note that git-annex sync --content is faster than a pull followed by a push, because it only has to walk the tree once, look at preferred content once, etc. So there is some value in git-annex sync in speed, as well as user convenience. And it would be hard to split out pull and push from sync, as far as the implementaton goes. The implementation inside sync was easy, just adjust SyncOptions so it does the right thing. Note that the new commands default to syncing content, unless annex.synccontent is explicitly set to false. I'd like sync to also do that, but that's a hard transition to make. As a start to that transition, I added a note to git-annex-sync.mdwn that it may start to do so in a future version of git-annex. But a real transition would necessarily involve displaying warnings when sync is used without --content, and time. Sponsored-by: Kevin Mueller on Patreon
56 lines
1.3 KiB
Markdown
56 lines
1.3 KiB
Markdown
# NAME
|
|
|
|
git-annex merge - merge changes from remotes
|
|
|
|
# SYNOPSIS
|
|
|
|
git annex merge [branch]
|
|
|
|
# DESCRIPTION
|
|
|
|
When run without any parameters, this performs the same merging (and merge
|
|
conflict resolution) that is done by the `git-annex pull` and `git-annex sync`
|
|
commands, but without uploading or downloading any data.
|
|
|
|
When a branch to merge is specified, this merges it, using the same merge
|
|
conflict resolution as the `git-annex pull` command. This is especially useful on
|
|
an adjusted branch, because it applies the same adjustment to the
|
|
branch before merging it.
|
|
|
|
When annex.resolvemerge is set to false, merge conflict resolution
|
|
will not be done.
|
|
|
|
# OPTIONS
|
|
|
|
* `--allow-unrelated-histories`, `--no-allow-unrelated-histories`
|
|
|
|
Passed on to `git merge`, to control whether or not to merge
|
|
histories that do not share a common ancestor.
|
|
|
|
* `--json`
|
|
|
|
Enable JSON output. This is intended to be parsed by programs that use
|
|
git-annex. Each line of output is a JSON object.
|
|
|
|
* `--json-error-messages`
|
|
|
|
Messages that would normally be output to standard error are included in
|
|
the JSON instead.
|
|
|
|
* Also, the [[git-annex-common-options]](1) can be used.
|
|
|
|
# SEE ALSO
|
|
|
|
[[git-annex]](1)
|
|
|
|
[[git-annex-pull]](1)
|
|
|
|
[[git-annex-sync]](1)
|
|
|
|
[[git-annex-adjust]](1)
|
|
|
|
# AUTHOR
|
|
|
|
Joey Hess <id@joeyh.name>
|
|
|
|
Warning: Automatically converted into a man page by mdwn2man. Edit with care.
|