How to keep the same contact list on different accounts In my iPhone it shows contacts from iCloud, Yahoo and Google accounts. 
If I add a new contact it added only to my default account which is google. If I made change to a contact which cames from the yahoo contact list, the change happens only to the contact on yahoo. 

But the thing is I want to maintain the same contact list on every account. 
It means if I add a new contact on my iPhone, It should be added to all my accounts(iCloud, Yahoo and Google).

Is there a way to do this?
Pick 1 and stick with it.

I have had similar issues, and wanted to synchronise multiple accounts, AND multiple devices. This is technically hard.

For example. What would happen if you have no internet on your phone, but you change the information of 4 contacts from your me.com account. In just a minute later someone changes the information of these contacts on gmail.com. 10 minutes later your phone has internet and wants to sync the 4 contacts with me.com.

Now gmail and me.com are in conflict. Who is right? This will results in unwanted duplicates and deletions. You do not want that.

Therefor my suggestion would be to pick 1 and stick with it. I have chosen for Apple's me.com, but that is just my personal preference.

How to merge them?


Make backups!
At first, you need to set up all accounts in Contacts
Select the contacts group on the left, select all contacts.
Now drag these contacts onto the contacts group you want to import them to. Contacts.app will ask you if you want to import the cards and it tells you that duplicates will be merged. You want this.
Now you only need to disable the account in the Contacts.app preferences (Command-comma). Preferences -> Accounts -> select the account you want to disable -> Remove tick mark from 'enable this account'