Каково наиболее распространенное программное обеспечение управления версиями для Windows? [закрытый]

7
задан Jon Seigel 19 February 2010 в 21:35
поделиться

10 ответов

Создатели FinalBuilder ежегодно проводили опросы своих клиентов (в основном на базе Windows). . Я не могу найти ничего более свежего, чем их опрос 2008 года , но вот как это выглядело тогда.

alt text

Как видите, вы должны знать не только одно. Однако было бы глупо не ознакомиться с Subverion и Sourcesafe.

Если бы я мог предсказать, как это изменилось с тех пор, я бы предположил, что Subversion добавила пользователей, SourceSafe немного уступил Team Foundation и что теперь появляется Git, но только с небольшими номерами.

12
ответ дан 6 December 2019 в 08:14
поделиться

Я думаю, не совсем для Windows, но Subversion (SVN) - необходимость.

2
ответ дан 6 December 2019 в 08:14
поделиться

В общем, те же типы управления версиями, которые вы используете в UNIX, также могут использоваться в Windows. Конечно, есть те, которых следует избегать в Windows - сразу приходит на ум VSS .

1
ответ дан 6 December 2019 в 08:14
поделиться

Короткий ответ, это SVN.

Бесплатно:

CVS практически мертв.

Subversion имеет лучшую интеграцию с windows (explorer, visual studio, eclipse, командная строка, WebDAV, и т.д...) у нее также есть GUI для других платформ.

С Git'ом вы вынуждены использовать исключительно командную строку.

Не бесплатно: Perforce - это хорошо, но что бы вы ни делали, не используйте Visual Sourcesafe и не рискуйте тем, что весь ваш репозиторий будет поврежден в какой-то момент времени, и вы не поймете этого гораздо позже.

2
ответ дан 6 December 2019 в 08:14
поделиться

До DVCS все крутые ребята использовали SVN; все остальные использовали VSS или TFS.

DVCS превращается в интересную конкуренцию, поскольку Git явно имеет преимущество в функциональности, но Mercurial имеет преимущество в интеграции с Windows. Бедный Базар, похоже, не заглядывает.

0
ответ дан 6 December 2019 в 08:14
поделиться

Его почти необходимо использовать для взаимодействия с базовой структурой данных, используемой API win32. Я полагаю, что очень большая причина иметь его в .net может быть из-за этой причины.

-121--1732734-

Вы переустановили Django ?

Это происходит, когда я устанавливаю бок о бок версии Python на Gentoo. При установке новой версии необходимо либо переустановить новые версии, либо создать символьную ссылку на старые пакеты сайта .

-121--4434991-

Мы довольно успешно используем msys-git на окнах. Средства графического интерфейса пользователя не являются отличными. Я использую командную строку, и она работает нормально. Мои коллеги используют git-расширения, которые интегрируются в визуальную студию. Кажется, это работает нормально.

Другим вариантом для меня будет SVN. У него отличная поддержка окон.

0
ответ дан 6 December 2019 в 08:14
поделиться

TortoiseSVN (svn) имеет тесную интеграцию с проводником, и большинство разработчиков, которых я знаю, работающих под Windows и использующих subversion, также используют Tortoise.

3
ответ дан 6 December 2019 в 08:14
поделиться

VisualSVN также подключается к VS и использует TortoiseSVN в качестве серверной части. Это 50 долларов за лицензию iirc. Работает неплохо. Если вы ищете хорошую связь с Visual Studio, также проверьте AnkSVN.

0
ответ дан 6 December 2019 в 08:14
поделиться

Определите исключения в самом месторасположении/обертке , и btw здесь уже определены исключения.

[% IF template.name.match('\.(css|js|txt)');
     debug("Passing page through as text: $template.name");
     content;
   ELSE;
     debug("Applying HTML page layout wrappers to $template.name\n");
     content WRAPPER site/html + site/layout;
   END;
-%]
-121--2991067-

Зачем использовать struct при работе класса ? Потому что иногда класс не работает.

В дополнение к причинам производительности, упомянутым Ридом Копси (короткая версия: меньше объектов, которые GC должен отслеживать, что позволяет GC выполнять более качественную работу), существует одно место, где структуры должны использоваться: P/Invoke для функций, которые требуют структур с побочными значениями или элементов структуры.

Предположим, что требуется вызвать функцию CreateProcess () . Далее предположим, что требуется использовать структуру STARTUPINFOEX для параметра lpStartupInfo для CreateProcess () .

Ну, что STARTUPINFOEX?

typedef struct _STARTUPINFOEX {
    STARTUPINFO                    StartupInfo;
    PPROC_THREAD_ATTRIBUTE_LIST    lpAttributeList;
} STARTUPINFOEX, *LPSTARTUPINFOEX;

Обратите внимание, что STARTUPINFOEX содержит STARTUPINFO в качестве первого участника. STARTUPINFO - это структура.

Так как классы - справочные типы, если мы объявили соответствующий тип C# таким образом:

[StructLayout(LayoutKind.Sequential)]
class STARTUPINFO { /* ... */ }

class STARTUPINFOEX { public STARTUPINFO StartupInfo; /* ... */ }

соответствующее расположение в памяти было бы неправильно , как , STARTUPINFOEX.StartupInfo будет указатель (4 байта на платформах ILP32), НЕ структура (как требуется, 68 байтов в размере на платформах ILP32).

Таким образом, для поддержки вызова произвольных функций, которые принимают произвольные структуры (то есть то, о чем все P/Invoke), необходима одна из двух вещей:

  1. Полностью поддерживать типы значений. Это позволяет C # объявлять тип значения для STARTUPINFO , который будет иметь правильный формат в памяти для маршалинга (т.е. поддержку struct , как это имеет C #).

  2. Некоторый альтернативный синтаксис в структурах P/Invokeable, который информирует маршалера среды выполнения о том, что этот член должен быть выложен как тип значения, а не как указатель.

(2) является работоспособным решением (и может быть использовано в J/Direct в Visual J++; Я не помню), но учитывая, что правильные типы значений более гибки, позволяют ряд оптимизаций производительности, которые иначе не достижимы, и разумно использовать в сценариях P/Invoke, неудивительно, что C # поддерживает типы значений.

-121--1732727-

Я бы согласился: Subversion. Но я совершенно уверен, что это удастся через день.

0
ответ дан 6 December 2019 в 08:14
поделиться

Да, TortioseSVN довольно хорошо работает в Windows. Также есть Tortoise для git! Хотя я не уверен, так ли это просто, как его кузен SVN.

https://tortoisegit.org/

2
ответ дан 6 December 2019 в 08:14
поделиться
Другие вопросы по тегам:

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