Uploaded image for project: 'Sourcetree for Windows'
  1. Sourcetree for Windows
  2. SRCTREEWIN-13513

RepoHandlerGitOld.NeedsLargeFilesPull incorrectly returning true for files reported unchanged by LFS

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Low
    • None
    • 3.4.2
    • Git
    • None
    • Severity 3 - Minor

    Description

      Being prompted to "Run 'git lfs pull' now?" despite all lfs files up to date when open a tab to a repository.

      Looks like the implementation of RepoHandlerGitOld.NeedsLargeFilesPull has been not quite right for a while.

      According to the lfs source for the output, ALL files will be output.
      Those that exist and are the same size will be annotated with a '*', those that don't with a '-'.

      701ab1713a2cacb797738ab5220a5ed640f1c38affb71e83cc6ac9bd53c35d13 - deletedfile.txt
      a6c2fde49d61d6226446ff0fb3d78db15ebae71da9fb505e17a32a1cb4f93ac4 * intactfile.txt

      Currently, SourceTree will prompt if the first line matches  "[0-9a-fA-F]{64} . .+", which is always.

       

      Proposed fix:

      Change the regex to search for "[0-9a-fA-F]{64} - .+" (changing the first dot to a minus) so that it only looks for files reported by LFS that need to be updated.

       

      The reason that 3.4.1 doesn't have this issue, is that the first file will be investigated for a string that contains "git-lfs.github.com".

       

      Related to #13418

      Attachments

        Activity

          People

            Unassigned Unassigned
            2f9a02d76474 Skibisky
            Votes:
            17 Vote for this issue
            Watchers:
            15 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: