1git-annex-adjust(1) General Commands Manual git-annex-adjust(1)
2
3
4
6 git-annex-adjust - enter an adjusted branch
7
9 git annex adjust --unlock|--lock|--fix|--hide-missing [--un‐
10 lock|--lock|--fix]|--unlock-present
11
13 Enters an adjusted form of the current branch. The annexed files will
14 be treated differently. For example with --unlock all annexed files
15 will be unlocked.
16
17 The adjusted branch will have a name like "adjusted/master(unlocked)".
18 Since it's a regular git branch, you can use git checkout to switch
19 back to the original branch at any time.
20
21 This allows changing how annexed files are handled, without making
22 changes to a public branch with commands like git-annex unlock.
23
24 While in the adjusted branch, you can use git-annex and git commands as
25 usual. Any commits that you make will initially only be made to the ad‐
26 justed branch.
27
28 To propagate commits from the adjusted branch back to the original
29 branch, and to other repositories, as well as to merge in changes from
30 other repositories, run git annex sync. This will propagate changes
31 that you've made such as adding/deleting files, but will not propagate
32 the adjustments made by this command.
33
34 When in an adjusted branch, using git merge otherbranch is often not
35 ideal, because merging a non-adjusted branch may lead to unncessary
36 merge conflicts, or add files in non-adjusted form. To avoid those
37 problems, use git annex merge otherbranch.
38
39 Re-running this command with the same options while inside the adjusted
40 branch will update the adjusted branch as necessary (eg for
41 --hide-missing and --unlock-present), and will also propagate commits
42 back to the original branch.
43
45 --unlock
46
47 Unlock all annexed files in the adjusted branch. This allows an‐
48 nexed files to be modified.
49
50 Normally, unlocking a file requires a copy to be made of its
51 content, so that its original content is preserved, while the
52 copy can be modified. To use less space, annex.thin can be set
53 to true before running this command; this makes a hard link to
54 the content be made instead of a copy. (When supported by the
55 file system.) While this can save considerable disk space, any
56 modification made to a file will cause the old version of the
57 file to be lost from the local repository. So, enable annex.thin
58 with care.
59
60 When in an adjusted unlocked branch, git annex add will add
61 files unlocked instead of the default behavior of adding them
62 locked.
63
64 --lock Lock all annexed file in the adjusted branch. This may be pre‐
65 ferred by those who like seeing broken symlinks when the content
66 of an annexed file is not present.
67
68 When in an adjusted locked branch, git annex add will add files
69 locked, as usual. However, git add (and git commit -a etc) still
70 add files unlocked. This is because it's not possible for those
71 git commands to add files locked.
72
73 --fix Fix the symlinks to annexed files to point to the local git an‐
74 nex object directory. This can be useful if a repository is
75 checked out in an unusual way that prevents the symlinks commit‐
76 ted to git from pointing at the annex objects.
77
78 --hide-missing
79 Only include annexed files in the adjusted branch when their
80 content is present.
81
82 The adjusted branch is not immediately changed when content
83 availability changes, so if you git annex drop files, they will
84 become broken links in the usual way. And when files that were
85 missing are copied into the repository from elsewhere, they
86 won't immediatly become visible in the branch.
87
88 To update the adjusted branch to reflect changes to content
89 availability, run git annex adjust --hide-missing again. Or, to
90 automate updates, set the annex.adjustedbranchrefresh config.
91
92 Despite missing files being hidden, git annex sync --content
93 will still operate on them, and can be used to download missing
94 files from remotes. It also updates the adjusted branch after
95 transferring content.
96
97 This option can be combined with --unlock, --lock, or --fix.
98
99 --unlock-present
100 Unlock files whose content is present, and lock files whose con‐
101 tent is missing. This provides the benefits of working with un‐
102 locked files, but makes it easier to see when the content of a
103 file is not missing, since it will be a broken symlink.
104
105 The adjusted branch is not immediately changed when content
106 availability changes, so when you git annex get files, they will
107 remain locked. And when you git annex drop files, they will re‐
108 main locked and so will not be broken symlinks.
109
110 To update the adjusted branch to reflect changes to content
111 availability, run git annex adjust --unlock-present again. Or,
112 to automate updates, set the annex.adjustedbranchrefresh config.
113 Or use git-annex sync --content, which updates the branch after
114 transferring content.
115
116 Also the git-annex-common-options(1) can be used.
117
119 git-annex(1)
120
121 git-annex-unlock(1)
122
123 git-annex-lock(1)
124
125 git-annex-upgrade(1)
126
127 git-annex-sync(1)
128
130 Joey Hess <id@joeyh.name>
131
132 git-annex-adjust(1)