anchor.diff:  
   Future<bool> _fromSourceDirTree(TaskContext ctx, String tree,
       String targetBranch, String sourceDir, String sourceBranch) {
  -  final match = LsTreeExp.firstMatch(tree);
  -  assert(match.groupCount == 4);
  -  final sha = match[3];
  +  final split = tree.split(_whiteSpaceExp);
  +  final sha = split[2];
   
     final gitArgs = new List<String>.from(['commit-tree', sha]);
     final branchNameRef = 'refs/heads/$targetBranch';
  
positive.code: 
  String _getParentTree(ProcessResult pr) {
    require(pr.exitCode == 0, 'cat-file returned an error');
    final split = pr.stdout.split(WhiteSpaceExp);
    require(split[0] == 'tree', "Should be a tree");
    return split[1].trim();
  }
  
negative.code:       });
  }
  
  final _whiteSpaceExp = new RegExp(r'\s+', multiLine: true);
  