Provided by: git-annex_10.20240129-1build1_amd64 bug

NAME

       git-annex-unlock - unlock files for modification

SYNOPSIS

       git annex unlock [path ...]

DESCRIPTION

       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 git add 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.

EXAMPLES

        # git annex unlock disk-image
        # git commit -m "unlocked to allow VM to make changes as it runs"

        # git annex unlock photo.jpg
        # gimp photo.jpg
        # git annex add photo.jpg
        # git annex lock photo.jpg
        # git commit -m "redeye removal"

OPTIONS

       file matching options

              The git-annex-matching-options(1) can be used to specify files to unlock.

       --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-edit(1)

       git-annex-add(1)

       git-annex-lock(1)

AUTHOR

       Joey Hess <id@joeyh.name>

                                                                                             git-annex-unlock(1)