Un classique parmi les difficultés rencontrées dans l'apprentissage de l'anglais. Voici ce que chacun de ces trois mots indique, avec leurs caractéristiques propres.
On le trouvera donc souvent suivi d'un mot exprimant une durée (minute, hour, day, week, etc.) en général avec un nombre pour la mesurer.
I lived in Yorkshire for 10 years.
J'ai vécu dans le Yorkshire pendant 10 ans.
They talk for hours every day
Ils parlent pendant des heures chaque jour.
I've known him for 2 weeks.
Je le connais depuis 2 semaines (Il y a 2 semaines que je ...)
Il sera donc accompagné de tout mot qui peut - d'une manière ou une autre - servir de date (yesterday, January, February..., 2010, last week), ou même d'une proposition entière. On le trouve avec un present perfect, ou un past perfect. Jamais avec un présent.
I have lived here since 1995.
J'habite ici depuis 1995.
I have lived here since I got married.
J'habite ici depuis que je me suis marié.
She has known him since yesterday.
Elle le connaît depuis hier.
He was here 3 minutes ago.
Il était ici il y a 3 minutes.
The accident happened 10 days ago.
L'accident est arrivé il y a 10 jours.
The country became independent 3 centuries ago.
Le pays est devenu indépendant il y a 3 siècles.
Comme le montrent les exemples de cette page, on ne peut pas dire qu'il y a une expression pour traduire "il y a", une autre pour "depuis" et une troisième pour "pendant".
Il faut se reporter au sens, et aussi au temps employé (prétérit ou present perfect).