private void clientCommit(String [] files) {
    
    if(files.length == 0) {
      System.out.println("No files to commit");
      System.exit(1);  
    }

    for(int i = 0; i < files.length; ++i) {
      File file = new File(files[i]);
      if(!file.exists()) {
        System.out.println("File " + files[i] + " not found");
        System.exit(0);
      }
    }

    HashMap<String,FileDescription> filesDescriptions = this.loadFilesDescriptions();
    FileDescription [] filesDescriptionsArray = new FileDescription [files.length];

    for(int i = 0; i < files.length; ++i) {
      
      File file = new File(files[i]);
      
      FileDescription fileDescription = (FileDescription) filesDescriptions.get(files[i]);
      if(fileDescription == null) {
        fileDescription = new FileDescription(files[i], 1, null,userName);
        filesDescriptions.put(files[i], fileDescription);
      }
      fileDescription.loadData();
      fileDescription.setTimestamp(new Date(Calendar.getInstance().getTime().getTime()));
      filesDescriptionsArray[i] = fileDescription;
    }
    
    EnumVCS enumVCS = null;
    try {
      enumVCS = server.commit(filesDescriptionsArray);
    } catch (RemoteException ex) {
      Logger.getLogger(Client.class.getName()).log(Level.SEVERE, null, ex);
    }

    if(this.checkEnumVCS(enumVCS)) {
      for(int i = 0; i < filesDescriptionsArray.length; ++i)
        filesDescriptionsArray[i].setVersion(filesDescriptionsArray[i].getVersion() + 1);

      this.writeFilesDescriptions(filesDescriptions);
    }

  }