I would use linear or rotary encoders - the difference in terminology, encoder vs. potentiometer, is in the fact that any linear potentiometer could be used as a linear encoder, but not all linear encoders are potentiometers. From the Wikipedia article on linear encoders: Optical linear encoders, "following interpolation, can provide resolutions as fine as a nanometre."
I've worked on full-scale vehicle autonomy projects before, and I can say that, for the same cost, sealed (IP-67) linear potentiometers are far less expensive and easier to attach than are other forms of linear encoders, but you haven't commented on your application so I don't know if water resistance (or cost for that matter) makes a difference for you.
As a final note, there is typically a degree of temperature dependence in resistive elements, so again, be sure to take your expected operating conditions into account when making this selection. A resistive element can provide absolute position but will require a range calibration to correlate readings to position, but other forms of absolute linear position indicators typically do not. You may or may not need absolute position, but again, this all depends on your application.