I've learned a new-to-me technique for weaving in ends, with this Fourth Doctor scarf. There are a lot of ends here -- over a hundred, with all of those stripes! -- so after every six or eight color changes, I stop and weave in the ends so as not to be overwhelmed with them all at once. The pattern from DoctorWhoScarf.com has you weave them in this way, so I thought I'd try it, and it works very well, so I will add it to my bag of tricks.
Work the garter stitch scarf slipping every last stitch knit-wise, and the first stitch of a new-color row with the old color. Leave the ends around 4 to 6 inches long, or a little less if you feel daring. You will have something like the photo at top, with the previous color to the right and the new one to the left.
To weave in the two ends, take the "new" color and tie a half-knot with the new color going over the old one (or in other words, the one in your left hand over the one in your right).
Because you worked the first stitch of the new stripe with the old color, as you snug up the half-knot the ends will begin to wrap around each other in a remarkable imitation of a knit stitch, with the two "bumps" interlocking.
Pull the ends close, but not tightly.
Thread one end of yarn into a darning needle, and weave the needle over and under the legs of the stitches in the old-color row, for the length of about 20 stitches.
Repeat the weaving for the second end, again weaving it into its matching color stripe.
Pull the ends towards the middle of the knitting, snugly but not tightly. If you pull it too tightly, just tug on the edge a little to make it straight again.
Pull the end of wool out from the knitting just a little bit, and snip it off closely -- as the stitches return to their original shape, the end will slide back into the knitting and disappear. If you had a particularly short end, you may not even need to trim it.
Nice and tidy!