can you motivate yourself to finish something small? say something that will take you one week? if nothing comes to mind, can you say wake up at 6am everyday for a week? or walk 2 miles everyday for a week? or cook for yourself, as best you can, "interesting" dinners? just for a week.
after that week is over, maybe report back?
i would not make any life changing decisions just now.
so far we're going with couch and haven't experienced this. the best part of course is that we can add items to documents on the fly whilst keeping the existing test data! this is major for us. we can go back to testing right away. with MySQL the changes were so major that it was better just dumping and recreating from scratch (we are using django) and this wasn't exactly fast. django has a project "south" that would help with this, but we're eventually deploying to oracle and cannot rely on it or have the time to extend it to properly work with oracle.
so i tried it for a couple of days, and the speed was the thing that impressed me the most actually. the rest is not that dissimilar, but i didn't dislike it as much as i thought i would :) - our workflow assumes mq already so a git add is a qnew, or qref, a git diff --cache is a qdiff, a git diff is an hg diff ... so on. most commits i make are usually a qfinish, which is comparable to a git commit (no -a).
how do you manage patch queues in git? we need them because we are constantly backporting to different versions of our app. branches will mean n merges for n versions. stacked git? or is there a git native way to manage the same?
what about something like tortoisehg? gitk is pretty crude in comparison.
i assume one can glue a diff/merge tool like meld. is the experience similar when resolving conflicts?
i guess i will have to try git to be sure, but i really don't see a difference here. usually if i'm going to try something drastic, i try it on a clone that i know i can throw away.
so if you track project state with branches (for say versions) and you need to apply 'new feature' to all this n branches, does that mean n merges for your team? not for ours.
first thing is to stop ruminating. even if your mind wants to. even if it feels like that is the best way out of this situation. so stop now. don't look for explanations, don't try to understand. that would make it worse. the answers are not in what we accomplish, or in what we think we need to do or be (great doctor vs. lowly coder) - all dangerous fabrications.