Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-59139

don't set GIT_LFS_SKIP_SMUDGE=1 anymore while cloning with git 2.15+

    Details

    • Similar Issues:

      Description

      Since commit 853603cccd4434b116ef9b8e094c3f5b815aa75a, we set GIT_LFS_SKIP_SMUDGE=1  to improve performance, and require users to add the "Git LFS pull after checkout" additional behaviour to resolve pointers. 

      This was mostly done because git clone performance was pretty bad with the smudge filter enabled, and in some configurations, (ssh clone URLs), git lfs pull didn't work.

      Since then, a lot has improved:

      Clone performance through the smudge filter has improved since https://github.com/git-lfs/git-lfs/pull/2511.

      Backends should support the git-lfs-authenticate dance as described in https://github.com/git-lfs/git-lfs/blob/master/docs/api/authentication.md#ssh, which retrieves a temporary authorization token to do the clone over https.

      I propose to just do a git clone without setting GIT_LFS_SKIP_SMUDGE=1. Most systems should have done a git lfs install before, so they will resolve the lfs pointers during a clone. We can keep the "Git LFS pull after checkout" additional behaviour, for systems that don't have setup global smudge filters via git lfs install.

        Attachments

          Issue Links

            Activity

            flokli Florian Klink created issue -
            markewaite Mark Waite made changes -
            Field Original Value New Value
            Assignee Mark Waite [ markewaite ]
            markewaite Mark Waite made changes -
            Labels newbie-friendly
            markewaite Mark Waite made changes -
            Summary don't set GIT_LFS_SKIP_SMUDGE=1 anymore while cloning don't set GIT_LFS_SKIP_SMUDGE=1 anymore while cloning with git 2.15+
            renescheibe René Scheibe made changes -
            Link This issue relates to JENKINS-56569 [ JENKINS-56569 ]
            renescheibe René Scheibe made changes -
            Link This issue relates to JENKINS-47531 [ JENKINS-47531 ]
            renescheibe René Scheibe made changes -
            Description Since [https://github.com/jenkinsci/git-client-plugin/commit/853603cccd4434b116ef9b8e094c3f5b815aa75a,] we set GIT_LFS_SKIP_SMUDGE=1  to improve performance, and require users to add the "Git LFS pull after checkout" "Additional behaviour" to resolve pointers.

             

            This was mostly done because git clone performance was pretty bad with the smudge filter enabled, and in some configurations, (ssh clone URLs), git lfs pull didn't work.

             

            Since then, a lot has improved:

             

            Clone Performance through the smudge filter has improved since [https://github.com/git-lfs/git-lfs/pull/2511.|https://github.com/git-lfs/git-lfs/pull/2511

            Backends should support the `git-lfs-authenticate` dance as described in [https://github.com/git-lfs/git-lfs/blob/master/docs/api/authentication.md#ssh], which retrieves a temporary authorization token to do the clone over https.

             

            I propose to just do a git clone without setting `GIT_LFS_SKIP_SMUDGE=1`. Most systems should have done a `git lfs install` before, so they will resolve the lfs pointers during a clone. We can keep the  "Git LFS pull after checkout" "Additional behaviour", for systems that don't have setup global smudge filters via `git lfs install`.
            Since commit [853603cccd4434b116ef9b8e094c3f5b815aa75a|https://github.com/jenkinsci/git-client-plugin/commit/853603cccd4434b116ef9b8e094c3f5b815aa75a], we set {{GIT_LFS_SKIP_SMUDGE=1}}  to improve performance, and require users to add the "Git LFS pull after checkout" additional behaviour to resolve pointers. 

            This was mostly done because git clone performance was pretty bad with the smudge filter enabled, and in some configurations, (ssh clone URLs), git lfs pull didn't work.

            Since then, a lot has improved:

            Clone performance through the smudge filter has improved since [https://github.com/git-lfs/git-lfs/pull/2511].

            Backends should support the {{git-lfs-authenticate}} dance as described in [https://github.com/git-lfs/git-lfs/blob/master/docs/api/authentication.md#ssh], which retrieves a temporary authorization token to do the clone over https.

            I propose to just do a git clone without setting {{GIT_LFS_SKIP_SMUDGE=1}}. Most systems should have done a {{git lfs install}} before, so they will resolve the lfs pointers during a clone. We can keep the "Git LFS pull after checkout" additional behaviour, for systems that don't have setup global smudge filters via {{git lfs install}}.

              People

              • Assignee:
                Unassigned
                Reporter:
                flokli Florian Klink
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated: