У меня есть такой код, как
void myfunc()
{
introduction();
while(condition())
{
complex();
loop();
interior();
code();
}
cleanup();
}
, который я хочу дублировать на две версии, а именно:
void myfuncA()
{
introduction();
minorchangeA();
while(condition())
{
complex();
loop();
interior();
code();
}
cleanup();
}
void myfuncB()
{
introduction();
minorchangeB();
while(condition())
{
complex();
modifiedB();
loop();
interior();
code();
}
cleanup();
extracleanupB();
}
git утверждает, что отслеживает контент, а не файлы, поэтому я должен сказать, что здесь есть фрагменты, которые являются общими как для myfuncA
, так и myfuncB
, так что при слиянии с вышестоящими потоками изменяется на myfunc
, что эти изменения должен распространяться как на myfuncA
, так и на myfuncB
? Если да, то как?
Код мог бы быть написан так, чтобы myfuncAB
делал правильные вещи в каждой точке, проверяя условия A или B, но это могло серьезно затруднить читаемость или производительность.