1. I think it's not correct to use terms "parent" and "child", as Go is not an OOP language.
2. Please note that what you call a Child is actually a Parent, and vice versa. This puts a lot of confusion.
3. Embedding struct will get methods of embedded (depending on whether they've been defined for value or pointer receivers and so on), so if I get your question right, then when you "inherit" these methods and you don't want this to happen, either not embed (put in a field instead), or override this method, or make this method be more universal for different cases.