The Christian Democratic Union (CDU) voted on Wednesday to oblige German-born children of foreigners to decide whether to take German nationality or that of their parents by the age of 23.
The vote rejects dual-nationality reforms introduced by the ruling left-right coalition in 2014.
In what was a close contest, 319 CDU lawmakers voted in favor of scrapping the dual-nationality reforms, while 300 voted against them.
The move signals that German Chancellor Angela Merkel's conservative party is lurching further to the right. Party hardliners are seeking to mend relations with the CDU's Bavarian ally, the Christian Social Union (CSU), which has adopted a tougher stance on immigration. The CDU is also seeking to woo back supporters lost to the anti-immigration Alternative for Germany (AfD).
However, Merkel has voiced her reluctance to move too far from the center, having urged party members to reject the notion.
"I personally think it would be wrong to turn back on this," a displeased Merkel said, responding to the vote.
The vote underlines the challenges facing Merkel in reining in the more conservative wings of her party, as she leads it into next year's general election.
Leading CDU and SPD figures rebuke vote
The motion reverses a compromise reached by the CDU with its junior coalition partner, the Social Democrats (SPD) in 2014, allowing those concerned to hold two passports at 23 years old.
CDU Interior Minister Thomas de Maiziere on Wednesday warned against tearing up the compromise with the SPD, adding that the vote was a blow against children of migrants at a time when Germany is struggling with integration issues.
However, fellow CDU member Jens Spahn welcomed the vote, maintaining that, while the party has to make compromises within a coalition, "we are here at a party conference." He added that it was not unreasonable to ask young people to make a clear choice.
Leading SPD lawmakers were also quick to rebuke the vote. Party leader and Vice-Chancellor Sigmar Gabriel said it showed discord among Germany's conservatives. "Either they have picked the wrong chairwoman or Madame Merkel has the wrong party," he said.
"Such a step backward into the past will not take place with the SPD," Katarina Barley, SPD secretary general, said. "The CDU has swung to the right at its party congress."
Allowing dual-nationality was one of the key demands raised by the SPD during coalition negotiations after the last elections in 2013.
Before 2014, children had to give up either their parents' citizenship or their German one by age 23. However, exceptions were made for children with parents from EU states, as well as from Switzerland and countries that do not allow citizens to renounce their citizenship.
The move mainly affects Turkish migrants, many of whom arrived in Germany during the 1960s and '70s as part of a guest worker program but have gone to stay and raise families.
The head of the Turkish Community in Germany (TGD) organization, Goekay Sofuoglu, also chided the CDU following the vote saying, "The CDU has lost not only its nerve but also its values."
dm/se (AFP, dpa)