code: public PlainChangesLog pushLog(QPath rootPath)
     {
        // session instance is always present in SessionChangesLog
        PlainChangesLog cLog = new PlainChangesLogImpl(getDescendantsChanges(rootPath), session);
        if (rootPath.equals(Constants.ROOT_PATH))
        {
           clear();
        }
        else
        {
           remove(rootPath);
        }
        return cLog;
     }
docs: Creates new changes log with rootPath and its descendants of this one and removes those
  entries.
  
  @param rootPath
  @return ItemDataChangesLog