Я думал бы что:
[Flags]
public enum PurchaseMethod
{
None = 0,
Cash = 1,
Check = 2,
CreditCard = 4,
All = Cash | Check | CreditCard
}
было бы немного более ясным.
В большинстве ситуаций git fetch
должен делать то, что вы хотите, а именно «получать что-нибудь новое из удаленного репозитория и помещать его в вашу локальную копию без слияния с вашими локальными ветвями». git fetch --tags
делает именно это, за исключением того, что он не получает ничего, кроме новых тегов.
В этом смысле git fetch --tags
никоим образом не является надмножество git fetch
. На самом деле все наоборот.
git pull
, конечно, не что иное, как оболочка для git fetch
. Это' Мы рекомендуем вам привыкнуть к выполнению вручную git fetch
ing и git merge
ing, прежде чем переходить к git pull
просто потому, что это поможет вам понять, что git pull
делает это в первую очередь.
При этом связь точно такая же, как и с git fetch
. git pull
- это расширенный набор git pull --tags
.
Примечание: этот ответ действителен только для git v1.8 и старше.
Большинство из этого было сказано в других ответах и комментариях, но вот краткое объяснение:
git fetch
извлекает все заголовки веток (или все, указанные в параметре конфигурации remote.fetch), все необходимые для них фиксации и все теги, доступные из этих ветвей. В большинстве случаев таким образом доступны все теги. git fetch --tags
выбирает все теги, все необходимые для них коммиты. Он не обновляет заголовки ветвей, даже если они доступны по тегам, которые были получены. Резюме: Если вы действительно хотите быть в курсе последних событий, используя только выборку, вы должны сделать и то, и другое.
Это также не «вдвое медленнее», если вы не имеете в виду набор текста в командной строке, и в этом случае псевдонимы решают вашу проблему.
Я сам отвечу на этот вопрос
Я определил, что есть разница. «git fetch --tags» может ввести все теги, но не приведет к появлению новых коммитов!
Оказывается, это необходимо сделать, чтобы быть полностью «обновленным», т.е. воспроизвести «git pull» "без слияния:
$ git fetch --tags
$ git fetch
Жалко, потому что это вдвое медленнее. Если бы только "git fetch" имел возможность делать то, что он обычно делает, и вводят все теги.