Как просмотреть конфликты слияния? [Дубликат]

Потому что вы не можете. Дженерики - это не шаблоны. Вы не должны думать о них, как шаблоны C ++, и ожидать такого же поведения.

Спецификация C # явно запрещает использование параметров типа в качестве базового класса:

C # 3.0 Спецификация языка: параметры типа (§4.5)

Параметр типа не может использоваться напрямую для объявления базового класса (§10.2.4) или интерфейса (§13.1.3).

blockquote>

Обновление:

Я понимаю, что вы хотите сделать и его использование. Это традиционный пример использования шаблонов C ++. В частности, если это было возможно сделать с использованием генераторов C #, такие вещи, как Moq library , могли бы быть полезны. Проблема в том, что C ++-шаблоны - это время компиляции «find and replace», в то время как C # generics - это время выполнения.

Чтобы продемонстрировать этот факт, для этого класса:

class Test where T : class {
    // whatever contents it might have...
} 

только один ИЛ будет выпущен во время компиляции и во время выполнения, компилятор JIT будет генерировать единый собственный код для всех типов типа ссылочного типа. Это совсем не похоже на C ++-шаблоны, где собственный код будет испускаться для каждого T отдельно (он подвержен оптимизации, но концептуально, они являются полностью отдельными фрагментами кода).

0
задан Breedly 18 January 2019 в 14:23
поделиться

1 ответ

Этот ответ может быть тривиальным / очевидным, но вы можете просто пойти дальше и выполнить слияние:

# from your target branch
git merge feature

Если вы столкнулись с некоторыми неприятными конфликтами слияния и хотите выручить, просто используйте: [114 ]

git merge --abort

Если объединение действительно завершается без конфликтов, но вы не хотите его сохранять, вы можете сбросить его:

git reset --hard HEAD~1

Примечание. Этот ответ предполагает, что вы делать все это локально, а не на удаленном сервере Git. Если вы используете что-то вроде Bitbucket или GitHub, то уже должна быть функция, которая делает примерно то, что вы хотите. Вы можете создать запрос на извлечение, и в случае непроходимых конфликтов слияния пользовательский интерфейс предупредит вас об этом.

0
ответ дан Tim Biegeleisen 18 January 2019 в 14:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: