public async Task <ContentChangeSet> GetChangeSet(string relativePath, IContentLoadCriteria criteria)
        {
            // try to get contents of the path first
            var result = await GetAllContents(GetFullPath(relativePath));

            // return nothing if there is not result
            if (result == null || result.Count == 0)
            {
                return(null);
            }

            var sha1 = result[0].Sha;

            // get list of all sub trees
            var trees = await this._client.GitDatabase.Tree.GetRecursive(_ownerName, this._repositoryName, sha1);

            // get all blob entries
            var blobs = trees.Tree.Where(x => x.Type == TreeType.Blob);

            // TODO: sha1 here is incorrect, need to get the latest commit sha1 instead
            var items     = blobs.Select(blob => blob.ToContentItem()).ToArray();
            var changeSet = new ContentChangeSet(sha1, items.Select(x => new ContentItemInfo(x)).ToArray());

            return(changeSet);
        }
        public async Task<ContentChangeSet> GetChangeSet(string relativePath, IContentLoadCriteria criteria)
        {
            // try to get contents of the path first
            var result = await GetAllContents(GetFullPath(relativePath));

            // return nothing if there is not result
            if (result == null || result.Count == 0)
            {
                return null;
            }

            var sha1 = result[0].Sha;

            // get list of all sub trees
            var trees = await this._client.GitDatabase.Tree.GetRecursive(_ownerName, this._repositoryName, sha1);

            // get all blob entries
            var blobs = trees.Tree.Where(x => x.Type == TreeType.Blob);

            // TODO: sha1 here is incorrect, need to get the latest commit sha1 instead
            var items = blobs.Select(blob => blob.ToContentItem()).ToArray();
            var changeSet = new ContentChangeSet(sha1, items.Select(x => new ContentItemInfo(x)).ToArray());

            return changeSet;
        }