Yes, the git command is wrapped by ssh-agent, which in turn runs the GIT_SSH wrapper. The GIT_SSH wrapper uses ssh-add to add the given identity file. ssh-agent is only executed once.