When I began, I started with the Guitar Grimoire series and it seems that I just looked at scales, intervals and chord formulas. Now I'm adding technique and looking at tone and effects but I don't know any songs or at least none all the way through. It seems I had a moment of clarity and almost feel embarrassed. The parts of the songs are even for exercise purposes. Is this going to ruin me?
Everyone learns differently and ultimately it depends on your goals. Presumably, though, you're learning guitar in order to play songs — and you can't very well do that without actually playing songs :P
Getting solid basis in theory and exercises is excellent, but it cannot teach you everything. If you want to learn to play songs you will absolutely need to begin playing songs in the same way that you would with an exercise — start with something simple, master it, and move on to something more difficult.
I don't think you're doing any active harm, however.
If you are looking at scales, intervals, chord formulas, techniques, tones and effects, you are not preparing for "songs" (which imply singing) but rather "playing" as a musical instrument rather than as something to go along with singing.
There is considerable overlap in both, of course. The important thing is to focus on the things you find fun. Now it's embarassing when someone says "oh, you play guitar?" and cranks out a songbook. And you can get in the "he plays like a devil but is too arrogant to play anything for/with us" corner. So socially, it pays off to spend a bit of time on some songs. It doesn't need to be mindless strumming if you are not into it: take a look at some good reasonably faithful editions of Leonard Cohen (not much singing skill required actually) or Simon/Garfunkel. The kind of picking patterns used there transfer reasonably well to other songs from a text/chord sheet.
But if you're into guitar for the sake of playing guitar and nothing else, who has the right to complain and make your life miserable?
If you can already play, let's say, 3 chords, e.g. E, A and B7, and change cleanly between them, you are capable of playing hundreds of songs ! You just need to play the chords in the order they come in each song. Maybe you want to learn that order, maybe you can read the chords like words in a story as you go along. Chords tend to come in 'families', where you find, say, a C, there's usually a G lurking in the wings. A good tutor or book should make that fact apparent.
If it's riffs, solos or tunes, then the same sort of tenet applies. Most tunes, riffs, etc consist of notes from a particular scale - depending also on the key of the piece. Not too much of a problem on guitar, as if you've learnt a riff around fret 5, and it's in A, move the same fingering up 3 frets, and you're playing it in C.
So, if you have the basic skills from this scheme or any other, just string them together, and you have a whole song.
In my teaching, I most often don't get a student to learn a whole song, for the above reasons. If they can play one verse, they can play another. Learn the solo by all means, but learn WHY it's like it is. Does it use the notes from G minor pentatonic? Yes? So make up a slightly different solo using the same notes, to fit the chord sequence instead.
Edit - the trouble with learning songs, per se, is that however many one learns, there's always someone who says 'Do you know so-and-so?', and of course, it's not in your repertoire. I've played with far too many people who are in that syndrome, and won't even try 'because I don't know it'. Better to learn HOW songs work and chord sequences fit together, for me at least.