Normally, the content of annexed files is protected from being changed. Unlocking an annexed file allows
it to be modified. When no files are specified, all annexed files in the current directory are unlocked.
Unlocking a file changes how it is stored in the git repository (from a symlink to a pointer file), so
this command will make a change that you can commit.
The content of an unlocked file is still stored in git-annex, not git, and when you commit modifications
to the file, the modifications will also be stored in git-annex, with only the pointer file stored in
git.
If you use gitadd to add a file to the annex, it will be added in unlocked form from the beginning. This
allows workflows where a file starts out unlocked, is modified as necessary, and is locked once it
reaches its final version.
Normally, unlocking a file requires a copy to be made of its content, so that its original content is
preserved, while the copy can be modified. To use less space, annex.thin can be set to true; this makes a
hard link to the content be made instead of a copy. (Only when supported by the file system.) While this
can save considerable disk space, any modification made to a file will cause the old version of the file
to be lost from the local repository. So, enable annex.thin with care.