Lightweight checkout in Bitbucket Branch Source Plugin was requested in JENKINS-42518 and implemented in PR#78. The diffstat was:
The main thing seems to be class BitbucketSCMFileSystem (source, Javadoc), which extends SCMFileSystem (source, Javadoc). In contrast, the source code of Bitbucket Server Integration never mentions SCMFileSystem.
From SCM API Implementation Guide, I get the impression that SCMProbe (source, Javadoc) is an alternative to SCMFileSystem. Because the source code of Bitbucket Branch Source Plugin does not mention SCMProbe, I think Bitbucket Server Integration need not implement that.
The BitbucketServerAPIClient.getFileContent method in Bitbucket Branch Source Plugin uses the "/rest/api/1.0/projects/{owner}/repos/{repo}/browse{/path*}{?at}" (REST API doc) URI template and apparently supports UTF-8 text files only. I wonder why that was chosen instead of "/rest/api/1.0/projects/{owner}/repos/{repo}/raw{/path*}{?at}" (REST API doc), which would respond with an octet stream.
Now that
JENKINS-63069has been fixed, thisJENKINS-63033is the only known issue blocking our migration from Bitbucket Branch Source Plugin.