Finding a change you made long ago
It *must* has happened to you: a new bug or issue shows up and then a bell rings: you know you wrote some code long ago (like two or three months ago) that had something to do with it. But... where's the code? And even more important: why did you change it?Ok, let's go: you all know Plastic SCM has a query system. Yes, you can go to the command line and type "cm find" and then you'll be able to start finding revisions, branches, labels, merges... everything. If you're a hardcore CLI hacker then you'll probably enjoy it, but let's face it... it's 2010 and well, we didn't yet step on Mars as the Odyssey said but it doesn't mean we've to continue using tools from the 70's and 80's...
So, take a look at the Plastic GUI, to the changesets view, for instance, and you'll find there a very familiar button: 'advanced'. Click on it and you'll discover that the changeset's view is actually running a query, something like "find changeset where date > '3/29/2010' on repository 'codice@localhost:6060'".
Let's use it to find the changes we're looking for: what about trying to find the revisions I've done in the last 3 months or so? It will translate into something like "find revs where date > '1/29/2010' and owner='me'" (Note: you can use 'me' instead of 'your-name', small trick).
Now you've a good list of 'candidates': all the revisions you've done during the last months. Easy. But, how to find the one you're looking for? You remember it was under src\client\basecommands directory, just that... So, use the filter on the view to reduce the potential candidates.
Once the list gets smaller, you can double click each file to see its contents (you know, on the 80's you'd use something like "cm cat" or so, but now there're better ways...) or even better, use CTRL-D (shortcut for differences) to see what you modified on that revision.
It took me one minute to find my change yesterday... hope it helps!
10 comentarios: