1)
The original custom was to name a child after an event in the parents’ lives -
for example, Noach, Yitzchak, Moshe, etc. Later, this custom changed, and
children were named after their ancestors.
2)
Regarding naming a child after an ancestor: some say that even if the child is
given a name that shares only a few letters in common with the name of the
ancestor, or even if the names share only a common meaning, the child is
considered to have been named after the ancestor.
3)
If one has the choice of naming his child after one of two people - one who died
recently, and another who died long ago; some hold the custom that the child is
to be named after the one who died more recently to the birth of the child.