BasePackFetchConnection(final PackTransport packTransport) {
    super(packTransport);
    includeTags = packTransport.getTagOpt() != TagOpt.NO_TAGS;
    thinPack = packTransport.isFetchThin();

    walk = new RevWalk(local);
    reachableCommits = new RevCommitList<RevCommit>();
    REACHABLE = walk.newFlag("REACHABLE");
    COMMON = walk.newFlag("COMMON");
    ADVERTISED = walk.newFlag("ADVERTISED");

    walk.carry(COMMON);
    walk.carry(REACHABLE);
    walk.carry(ADVERTISED);
  }