I feel the previous answers don't completely answer the question, so I'm providing my own.
SI units were originally chosen with reference to constant quantities that we as humans could measure at the time they were defined. For example, when the metre was officially defined in 1793, it was as a fraction of the distance from the equator to the north pole. Once distance (and hence area and volume) were defined, many other units could be expressed using properties of materials: kilograms as the mass of a litre (0.001m^3) of water, amps in terms of forces between loops of metal wire... Other units such as air pressure were expressed relative to the pressure at sea level, and seconds are defined relative to the length of a day.
Of course all of these original definitions have flaws: determining the exact position of the (geographic) north pole and measuring the distance to it with any accuracy would have been hard enough in 1793, and even since gaining the technology to do it we know enough about the earth to expect that distance (and similarly air pressure at sea level) to fluctuate minutely over the course of a year or a century. Thus we replaced these original definitions with quantities derived from materials in carefully controlled conditions, which the consensus in physics assures us are universal, which is to say that reproducing the same conditions anywhere in the universe will give a measurement that agrees. Nonetheless, the relative scales of these definitions have been retained, so all SI units are determined by human experience.
However, the study of physics makes clear that there are more natural, fundamental ways to choose units independent of human experience. Since Einstein, relativity has taught us that light has a universal speed through which we can compare distances and times. This speed alone provides no fundamental unit of distance or time; in terms of SI units we get a constant $c$ that expresses the ratio of metres to light-seconds, for instance. The idea of natural units is that we rescale our measurements: perhaps we keep seconds to measure time, but we now measure distances in light seconds. This is the same as setting $c=1$. However, in this interpretation, $c$ is not dimensionless! Rather, it allows us to ignore dimensions because we implicitly correct the dimensionality of expressions by multiplying with powers of $c$ that we may now ignore numerically because $c=1$. Of course, if we ever want to use the resulting equations for real-world calculations in terms of the familiar units, we can use dimensional analysis to put the powers of $c$ back in.
The more fundamental constants we have, the fewer units we need to choose, as long as they don't clash. As pointed out in the other answers, we can rescale to make $c=\hbar=G=1$, but only because these quantities are dimensionally independent. If a revelation in physics produced a new fundamental speed $c'$ different from $c$, for example, then we of course couldn't rescale to make both of these 1.
I think the accepted answer here gives two good interpretations / explanations, the first of which is similar to mine.