1git-annex-pull(1) General Commands Manual git-annex-pull(1)
2
3
4
6 git-annex-pull - pull content from remotes
7
9 git annex pull [remote ...]
10
12 This command pulls content from remotes. It downloads both git reposi‐
13 tory content, and the content of annexed files. Like git pull, it
14 merges changes into the current branch.
15
16 You can use git pull and git-annex get by hand to do the same thing as
17 this command, but this command handles several details, including mak‐
18 ing sure that the git-annex branch is fetched from the remote.
19
20 Some special remotes contain a tree of files that can be imported, and
21 this command can be used to pull from those remotes as well as regular
22 git remotes. See git-annex-import(1) for details about how those spe‐
23 cial remotes work. In order for this command to import from a special
24 remote, remote.<name>.annex-tracking-branch also must be configured,
25 and have the same value as the currently checked out branch.
26
27 When git-annex-adjust(1) has been used to check out an adjusted branch,
28 this command will also pull changes from the parent branch.
29
30 When git-annex-view(1) has been used to check out a view branch, this
31 command will update the view branch to reflect any changes to the par‐
32 ent branch or metadata.
33
34 Normally this tries to download the content of each annexed file, from
35 any remote that it's pulling from that has a copy. To control which
36 files it downloads, configure the preferred content of the local repos‐
37 itory.It will also drop files from a remote that are not preferred con‐
38 tent of the remote. See git-annex-preferred-content(1).
39
41 [remote]
42
43 By default this command pulls from all remotes, except for re‐
44 motes that have remote.<name>.annex-pull (or remote.<name>.an‐
45 nex-sync) set to false.
46
47 By specifying the names of remotes (or remote groups), you can
48 control which ones to pull from.
49
50 --fast Only pull with the remotes with the lowest annex-cost value con‐
51 figured.
52
53 When a list of remotes (or remote groups) is provided, it picks
54 from amoung those, otherwise it picks from amoung all remotes.
55
56 --only-annex -a, --not-only-annex
57 Only pull the git-annex branch and annexed content from remotes,
58 not other git branches.
59
60 The annex.synconlyannex configuration can be set to true to make
61 this be the default behavior. To override such a setting, use
62 --not-only-annex.
63
64 When this is combined with --no-content, only the git-annex
65 branch will be pulled.
66
67 --no-content, -g, --content
68 Use --no-content or -g to avoid downloading (and dropping) the
69 content of annexed files.
70
71 If you often use --no-content, you can set the annex.synccontent
72 configuration to false to prevent downloading content by de‐
73 fault. The --content option overrides that configuration.
74
75 --content-of=path -C path
76 Only download (and drop) annexed files in the given path.
77
78 This option can be repeated multiple times with different paths.
79
80 --all -A
81 Usually this command operates on annexed files in the current
82 branch. This option makes it operate on all available versions
83 of all annexed files (when preferred content settings allow).
84
85 Note that preferred content settings that use include= or ex‐
86 clude= will only match the version of files currently in the
87 work tree, but not past versions of files.
88
89 --jobs=N -JN
90 Enables parallel pulling with up to the specified number of jobs
91 running at once. For example: -J10
92
93 Setting this to "cpus" will run one job per CPU core.
94
95 (Note that git pulls are not done in parallel because that tends
96 to be less efficient.)
97
98 --allow-unrelated-histories, --no-allow-unrelated-histories
99 Passed on to git merge, to control whether or not to merge his‐
100 tories that do not share a common ancestor.
101
102 --resolvemerge, --no-resolvemerge
103 By default, merge conflicts are automatically handled by this
104 command. When two conflicting versions of a file have been com‐
105 mitted, both will be added to the tree, under different file‐
106 names. For example, file "foo" would be replaced with "foo.vari‐
107 ant-A" and "foo.variant-B". (See git-annex-resolvemerge(1) for
108 details.)
109
110 Use --no-resolvemerge to disable this automatic merge conflict
111 resolution. It can also be disabled by setting annex.resolve‐
112 merge to false.
113
114 --backend
115 Specifies which key-value backend to use when importing from a
116 special remote.
117
118 Also the git-annex-common-options(1) can be used.
119
121 git-annex(1)
122
123 git-annex-push(1)
124
125 git-annex-sync(1)
126
127 git-annex-preferred-content(1)
128
130 Joey Hess <id@joeyh.name>
131
132 git-annex-pull(1)