Uploaded image for project: 'Bitbucket Data Center'
  1. Bitbucket Data Center
  2. BSERV-9623

Add support for Git LFS File Locking API

XMLWordPrintable

    • We collect Bitbucket feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.

      Atlassian status as of May 2019

      Hi everyone,

      Git LFS file locking is supported starting from Bitbucket Server 6.3.

      Details on locking and unlocking feature is here - Working with Git LFS Files.

      Anton Genkin
      Product Manager - Bitbucket Server

      Original description is below:

      The Git LFS 2.0 client has been released and supports the new Git LFS File Locking API. Bitbucket Server currently (as at version 4.14) does not support this API.

      The Git LFS client, upon attempting to lock a file will report the server does not implement the locking API:

      $ git lfs lock galaxy1.jpg
      Lock failed: Not Implemented: https://user@bitbucket.example.com/scm/myproject/lfstest.git/info/lfs/locks
      

      SSH Caveat:

      Where an SSH remote is used the error message indicating "lock failed" will be different, it will report as an "Authorization error" as below:

      Lock failed: Authorization error: https://bitbucket.example.com/scm/myproject/lfstest.git/info/lfs/locks
      Check that you have proper access to the repository
      

      The reason for this is, when authenticating via SSH a JWT authentication token is returned, for use on the Git LFS HTTP based APIs. While the token is valid for accessing the Batch API (for example to upload a file) it is not valid for the (non existent) /info/lfs/locks API.

              Unassigned Unassigned
              behumphreys Ben Humphreys
              Votes:
              354 Vote for this issue
              Watchers:
              227 Start watching this issue

                Created:
                Updated:
                Resolved: