По умолчанию C # предоставляет только true
и false
.
Однако, вы можете иметь свои собственные пользовательские типы, становящиеся «истинными» и «ложными», реализуя оператор true
. Когда тип реализует оператор true
, экземпляры этого типа могут использоваться как логическое выражение. Из раздела 7.19 Спецификации языка C # :
Когда логическое выражение имеет тип, который не может быть неявно преобразован в bool, но реализует оператор true, после оценки expression, оператор true, предоставляемый этим типом, вызывается для получения значения bool.
Тип структуры
DBBool
в §11.4.2 предоставляет пример типа, который реализует оператор true и оператор false.
Вот фрагмент кода объявления оператора true
(который, вероятно, выполнит то, что вы хотели сделать в своем вопросе):
public static bool operator true(MyType myInstance)
{
return myInstance != null;
}
Если вы реализуете true
, то вы должны также реализовать оператор false
.
В Git GUI есть кнопка PUSH - простите за каламбур, а в открывшемся диалоговом окне есть флажок для тегов.
Я выдвинул ветку из командной строки без тегов, а затем снова попытался протолкнуть ветку, используя опцию --follow-tags
, описанную выше. Опция описана как следующие аннотированные теги. Мои теги были простыми тегами.
Я что-то исправил, пометил коммит с исправлением (чтобы коллеги могли выбрать исправление), затем изменил номер версии программного обеспечения и пометил созданный мной выпуск (чтобы коллеги могли клонировать этот выпуск) .
1110 Гит вернулся, сказав, что все было актуально. Он не отправил теги! Возможно, потому что теги не были аннотированы. Возможно, потому что на ветке не было ничего нового.
Когда я проделал похожий толчок с Git GUI, теги были отправлены.
В настоящее время я собираюсь отправить свои изменения на мои пульты с помощью Git GUI, а не с помощью командной строки и --follow-tags
.
Мерзавец @since 2.4
git push --atomic origin <branch name> <tag>