В случае 1, если вы использовали метод DoIt () унаследованного класса, в то время как тип объявлен как базовый класс, вы увидите действие базового класса.
/* Results
Class1
Base1
Class2
Class2
*/
public abstract class Base1
{
public void DoIt() { Console.WriteLine("Base1"); }
}
public class Class1 : Base1
{
public new void DoIt() { Console.WriteLine("Class1"); }
}
public abstract class Base2
{
public virtual void DoIt() { Console.WriteLine("Base2"); }
}
public class Class2 : Base2
{
public override void DoIt() { Console.WriteLine("Class2"); }
}
static void Main(string[] args)
{
var c1 = new Class1();
c1.DoIt();
((Base1)c1).DoIt();
var c2 = new Class2();
c2.DoIt();
((Base2)c2).DoIt();
Console.Read();
}
Проблема с клиентом mgitsys
Подробнее здесь: MGitsys Bug
В качестве обходного пути я использую более старую версию: git version 1.7.4.rc1.3197.gbf965
У этого нет этой ошибки.
Я разместил эту конкретную сборку в своем сообществе SkyDrive папка, ссылка: http://sdrv.ms/MeuWTD
Надеюсь, она будет исправлена в ближайшем будущем.
Если вы используете msysgit - они только что выпустили версию, которая позволяет опции конфигурации останавливать git.
Исправлено для https://github.com/msysgit/git/issues/101 в выпуске https://github.com/msysgit/msysgit/releases /tag/Git-1.9.4-preview20140611
Вы можете исправить это, установив
git config --global sendpack.sideband false