public int CompareTo(VersionInfo other)
 {
     if (other == null)
     {
         return(1);
     }
     if (ReferenceEquals(this, other))
     {
         return(0);
     }
     if (!other.ComponentName.Equals(ComponentName))
     {
         return(ComponentName.CompareTo(other.ComponentName));
     }
     if (Major != other.Major)
     {
         return(Major.CompareTo(other.Major));
     }
     if (Minor != other.Minor)
     {
         return(Minor.CompareTo(other.Minor));
     }
     if (Build != other.Build)
     {
         return(Build.CompareTo(other.Build));
     }
     return(Minor.CompareTo(other.Revision));
 }