Я полагаю, что Ваш первый образец на самом деле создает анонимную функцию, которая может взять много различных подписей, тело которых является отдельным оператором Console.WriteLine...
. Поскольку это может соответствовать различным подписям, это не вызывает проблему. Во втором образце сам синтаксис лямбды определяет функцию, которая не берет параметров с тем же телом. Очевидно, последний не согласовывается с определенным Действием, таким образом, Вы получаете ошибку.
существует один случай, в котором анонимный метод обеспечивает функциональность, не найденную в лямбда-выражениях. Анонимные методы позволяют Вам опустить список параметров, и это означает, что анонимный метод может быть преобразован в делегатов со множеством подписей. Это не возможно с лямбда-выражениями.
default/non-bare Мерзавец repo содержит две части состояния:
, снимок - то, о чем Вы, вероятно, думаете как свой проект: Ваши файлы кода, файлы типа "build", сценарии помощника и что-либо еще Вы присваиваете версию с Мерзавцем.
история является состоянием, которое позволяет Вам проверять другую фиксацию и получать полный снимок того, на что были похожи файлы в Вашем репозитории, когда та фиксация была добавлена. Это состоит из набора структур данных, которые являются внутренними Мерзавцу, с которым Вы, вероятно, никогда не взаимодействовали непосредственно. Значительно, история только хранит метаданные (например, "Пользователь U добавил это много строк к Файлу F во Время T как часть Фиксации C"), это также хранит данные (например, "Пользователь U добавил эти точные строки в Файл F").
ключевая идея пустого репозитория состоит в том, что у Вас не должно на самом деле быть снимка. Мерзавец имеет в наличии снимок, потому что это удобно для людей и других процессов немерзавца, которые хотят взаимодействовать с Вашим кодом, но снимок просто копирует состояние, это уже находится в истории.
А пустой репозиторий является репозиторием Мерзавца, который не имеет снимка. Это просто хранит историю.
, Почему Вы хотели бы это? Ну, если Вы только собираетесь взаимодействовать со своими файлами с помощью Мерзавца (то есть, Вы не собираетесь редактировать свои файлы непосредственно или использовать их для создания исполняемого файла), можно оставить свободное место, не имея в наличии снимок. В частности, если Вы поддерживаете централизованную версию своего repo на сервере где-нибудь (т.е. Вы в основном размещаете свой собственный GitHub), тот сервер должен, вероятно, иметь пустой repo (Вы все еще использовали бы непустой repo на своей локальной машине, хотя, так как Вы, по-видимому, захотите отредактировать свой снимок).
, Если Вы хотите более всестороннее объяснение пустого repos и другого варианта использования в качестве примера, я описал сообщение в блоге здесь: https://stegosaurusdormant.com/blog/bare-git-repo /