Program: 113294
Project: 113294
Buggy source:
public void printFormatted(GeogigCLI cli) throws IOException {
  Console console=cli.getConsole();
  GeoGIG geogig=cli.getGeogig();
  for (  String ref : refs) {
    Optional<RevObject> obj=geogig.command(RevObjectParse.class).setRefSpec(ref).call();
    if (!obj.isPresent()) {
      ref=getFullRef(ref);
      obj=geogig.command(RevObjectParse.class).setRefSpec(ref).call();
    }
    checkParameter(obj.isPresent(),"String_Node_Str");
    RevObject revObject=obj.get();
    if (revObject instanceof RevFeature) {
      Optional<RevFeatureType> opt=geogig.command(ResolveFeatureType.class).setRefSpec(ref).call();
      if (opt.isPresent()) {
        RevFeatureType ft=opt.get();
        ImmutableList<PropertyDescriptor> attribs=ft.sortedDescriptors();
        RevFeature feature=(RevFeature)revObject;
        Ansi ansi=super.newAnsi(console);
        ansi.newline().fg(Color.YELLOW).a("String_Node_Str").reset().a(feature.getId().toString()).newline();
        ansi.fg(Color.YELLOW).a("String_Node_Str").reset().a(ft.getId().toString()).newline().newline();
        ansi.a("String_Node_Str").newline();
        ansi.a("String_Node_Str").newline();
        ImmutableList<Optional<Object>> values=feature.getValues();
        int i=0;
        for (        Optional<Object> value : values) {
          ansi.fg(Color.YELLOW).a(attribs.get(i).getName() + "String_Node_Str").reset();
          ansi.a(value.or("String_Node_Str").toString()).newline();
          i++;
        }
        console.println(ansi.toString());
      }
 else {
        CharSequence s=geogig.command(CatObject.class).setObject(Suppliers.ofInstance(revObject)).call();
        console.println(s);
      }
    }
 else     if (revObject instanceof RevTree) {
      RevTree tree=(RevTree)revObject;
      Optional<RevFeatureType> opt=geogig.command(ResolveFeatureType.class).setRefSpec(ref).call();
      checkParameter(opt.isPresent(),"String_Node_Str");
      RevFeatureType ft=opt.get();
      Ansi ansi=super.newAnsi(console);
      ansi.fg(Color.YELLOW).a("String_Node_Str").reset().a(tree.getId().toString()).newline();
      ansi.fg(Color.YELLOW).a("String_Node_Str").reset().a(Long.toString(tree.size())).newline();
      ansi.fg(Color.YELLOW).a("String_Node_Str").reset().a(Integer.toString(tree.numTrees()).toString()).newline();
      printFeatureType(ansi,ft,true);
      console.println(ansi.toString());
    }
 else     if (revObject instanceof RevCommit) {
      RevCommit commit=(RevCommit)revObject;
      Ansi ansi=super.newAnsi(console);
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).fg(Color.YELLOW).a(commit.getId().toString()).reset().newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).fg(Color.GREEN).a(formatPerson(commit.getAuthor())).reset().newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).fg(Color.GREEN).a(formatPerson(commit.getAuthor())).reset().newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).a("String_Node_Str").fg(Color.RED).a(estimateSince(geogig.getPlatform(),commit.getAuthor().getTimestamp())).reset().a("String_Node_Str").a(new Date(commit.getAuthor().getTimestamp())).newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).a("String_Node_Str").fg(Color.RED).a(estimateSince(geogig.getPlatform(),commit.getCommitter().getTimestamp())).reset().a("String_Node_Str").a(new Date(commit.getCommitter().getTimestamp())).newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).a(commit.getMessage()).newline();
      console.println(ansi.toString());
    }
 else     if (revObject instanceof RevFeatureType) {
      Ansi ansi=super.newAnsi(console);
      printFeatureType(ansi,(RevFeatureType)revObject,false);
      console.println(ansi.toString());
    }
 else {
      throw new InvalidParameterException("String_Node_Str");
    }
    console.println();
  }
}

Fixed version (ground truth):
public void printFormatted(GeogigCLI cli) throws IOException {
  Console console=cli.getConsole();
  GeoGIG geogig=cli.getGeogig();
  for (  String ref : refs) {
    Optional<RevObject> obj=geogig.command(RevObjectParse.class).setRefSpec(ref).call();
    if (!obj.isPresent()) {
      ref=getFullRef(ref);
      obj=geogig.command(RevObjectParse.class).setRefSpec(ref).call();
    }
    checkParameter(obj.isPresent(),"String_Node_Str");
    RevObject revObject=obj.get();
    if (revObject instanceof RevFeature) {
      Optional<RevFeatureType> opt=geogig.command(ResolveFeatureType.class).setRefSpec(ref).call();
      if (opt.isPresent()) {
        RevFeatureType ft=opt.get();
        ImmutableList<PropertyDescriptor> attribs=ft.sortedDescriptors();
        RevFeature feature=(RevFeature)revObject;
        Ansi ansi=super.newAnsi(console);
        ansi.newline().fg(Color.YELLOW).a("String_Node_Str").reset().a(feature.getId().toString()).newline();
        ansi.fg(Color.YELLOW).a("String_Node_Str").reset().a(ft.getId().toString()).newline().newline();
        ansi.a("String_Node_Str").newline();
        ansi.a("String_Node_Str").newline();
        ImmutableList<Optional<Object>> values=feature.getValues();
        int i=0;
        for (        Optional<Object> value : values) {
          ansi.fg(Color.YELLOW).a(attribs.get(i).getName() + "String_Node_Str").reset();
          ansi.a(value.or("String_Node_Str").toString()).newline();
          i++;
        }
        console.println(ansi.toString());
      }
 else {
        CharSequence s=geogig.command(CatObject.class).setObject(Suppliers.ofInstance(revObject)).call();
        console.println(s);
      }
    }
 else     if (revObject instanceof RevTree) {
      RevTree tree=(RevTree)revObject;
      Optional<RevFeatureType> opt=geogig.command(ResolveFeatureType.class).setRefSpec(ref).call();
      checkParameter(opt.isPresent(),"String_Node_Str");
      RevFeatureType ft=opt.get();
      Ansi ansi=super.newAnsi(console);
      ansi.fg(Color.YELLOW).a("String_Node_Str").reset().a(tree.getId().toString()).newline();
      ansi.fg(Color.YELLOW).a("String_Node_Str").reset().a(Long.toString(tree.size())).newline();
      ansi.fg(Color.YELLOW).a("String_Node_Str").reset().a(Integer.toString(tree.numTrees()).toString()).newline();
      printFeatureType(ansi,ft,true);
      console.println(ansi.toString());
    }
 else     if (revObject instanceof RevCommit) {
      RevCommit commit=(RevCommit)revObject;
      Ansi ansi=super.newAnsi(console);
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).fg(Color.YELLOW).a(commit.getId().toString()).reset().newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).fg(Color.GREEN).a(formatPerson(commit.getAuthor())).reset().newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).fg(Color.GREEN).a(formatPerson(commit.getCommitter())).reset().newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).a("String_Node_Str").fg(Color.RED).a(estimateSince(geogig.getPlatform(),commit.getAuthor().getTimestamp())).reset().a("String_Node_Str").a(new Date(commit.getAuthor().getTimestamp())).newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).a("String_Node_Str").fg(Color.RED).a(estimateSince(geogig.getPlatform(),commit.getCommitter().getTimestamp())).reset().a("String_Node_Str").a(new Date(commit.getCommitter().getTimestamp())).newline();
      ansi.a(Strings.padEnd("String_Node_Str",15,' ')).a(commit.getMessage()).newline();
      console.println(ansi.toString());
    }
 else     if (revObject instanceof RevFeatureType) {
      Ansi ansi=super.newAnsi(console);
      printFeatureType(ansi,(RevFeatureType)revObject,false);
      console.println(ansi.toString());
    }
 else {
      throw new InvalidParameterException("String_Node_Str");
    }
    console.println();
  }
}