I think both are grammatically correct and mean the same thing. "British history has been a history" however is awkward and grates. Britain has a history of reads better. IMO.
as TCL says... it's really "one ANother" or "each [THE] other" and you ought to restrict "each other" to when there are just two. However, not many people know this (as the answers you've got demonstrate) so it probably doesn't matter.