Мерзавец (hg) мнение / Подвижное (hg) мнение

Во-первых, позвольте мне сказать, что я не профессиональный программист, а инженер, который имел потребность в нем и должен был учиться. Я всегда работал один, таким образом, это был просто я и мои семь раздвоений личности..., и мы работали okey командой :) Большая часть моего материала сделана в C/Fortran/Matlab, и до сих пор я изучал мерзавца для управления всем этим. Однако, хотя у меня не было неразрешимых проблем с ним, я никогда не был "настолько" доволен им... для всего, что я не могу сделать, я должен искать книгу. И, в течение некоторого времени теперь я слышал много хорошего материала о Подвижном.
Теперь, мой коллега должен будет работать со мной на проекте (я почти чувствую жалость к нему), и он начал учиться Подвижный (говорит, что ему нравится он больше), и я рассматриваю переключатель сам.

Мы работаем почти исключительно над платформой Windows (хотя я управляю относительно хорошо инструментами Unix использования и вещами, которые прибывают из той части мира).

Так, я задавался вопросом в описанном сценарии, что проблемы могли я ожидать с переключателем. Я слышал, что Подвижный скорее более удобно для пользователя к пользователям Windows, относительно пользовательских интерфейсов.

Как это обрабатывает репозитории? Это создает их тот же путь, как мерзавец делает (всего один подкаталог в рабочем каталоге), и я могу просто скопировать целый каталог проекта (включая мерзавца repo) и просто нести их куда-нибудь без дополнительных взглядов? (Мне действительно понравилось это, когда я предпочитал git/svn).

Есть ли любые хорошие книги по нему, что можно рекомендовать (что-то как Pro Мерзавец, только для Подвижного).

Что является хорошими способами реализовать Подвижный в Visual Studio/GVim для Windows, или в Windows Explorer, таким образом, я могу работать относительно легко (я хотел бы избегать использования командной строки для всего относительно него, как в оболочке мерзавца).

Есть ли что-то еще, о чем я должен знать (на этом не указывают на меня на другие вопросы... они просто дают мне тонну информации, и я не уверен, что является ею, что я должен взять в качестве важного, и что игнорировать). Я пытаюсь сократить некоторое время, так как я не могу провести все то время, повторно учась Подвижный, как я сделал для мерзавца.

Я также услышал, что мерзавец является c проектом, в то время как подвижный Python... там любое заметное различие в скорости. мерзавец был довольно быстр... будет я встречаться с некоторым ожиданием при работе.

Уведомление: Все мои проекты имеют скажем, средний размер... главным образом численное моделирование... 10-15000 строк (средний размер?)

25
задан Grant 26 March 2010 в 22:59
поделиться

8 ответов

Во-первых, позвольте мне сказать, что я не профессиональный программист, а инженер, который нуждался в этом и должен был учиться.

И здесь инженер. Я использовал Mercurial, Subversion, BitKeeper и CVS. Еще не добрался до Git.

Я слышал, что hg более удобна для пользователей Windows, что касается пользовательских интерфейсов.

Не уверен, что здесь имелось в виду, Git и Mercurial по сути своей являются инструментами командной строки.

Как он обрабатывает репозитории?

Это распределенная система контроля версий (DVCS), как и Git.

Создает ли он их так же, как и git (только один подкаталог в рабочем каталоге), и могу ли я просто скопировать весь каталог проекта (включая репозиторий git) и просто перенести их куда-нибудь без лишних размышлений? (Мне это очень нравилось, когда я выбирал git / svn).

Да. Репозиторий Mercurial находится в каталоге .hg в рабочем каталоге. Кроме того, Mercurial имеет систему именования в своем репозитории для предотвращения конфликтов имен файлов, если вы используете ее с файловой системой без учета регистра, такой как FAT, NTFS или HFS +.

Есть ли по нему какие-нибудь хорошие книги, которые вы могли бы порекомендовать (что-то вроде Pro Git, только для Hg).

Я бы порекомендовал веб-сайт: https://www.mercurial-scm.org/guide

Каковы хорошие способы реализации hg в Visual Studio / GVim для Windows или в проводнике Windows, чтобы Я могу работать относительно легко (я бы не хотел использовать командную строку для всего, что связано с этим, как в оболочке git).

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

Я также слышал, что git - это проект c, а mercurial - это python ... есть ли заметная разница в скорости. git был довольно быстрым ... я столкнусь с ожиданием во время работы.

Mercurial чертовски быстр. Я не знаю, как он сочетается с Git, но он намного быстрее, чем Subversion.

Примечание: все мои проекты, скажем, среднего размера ... в основном численное моделирование ... 10-15000 строк (средний размер?)

Похоже на мои вещи. Не считая, конечно, сырых данных.

И не по теме ...

Большая часть моих вещей сделана на C / Fortran / Matlab, и до сих пор я учился git управлять всем этим.

Я недавно перехожу с Matlab на Python ...

  • Никакой ерунды с лицензиями и техобслуживанием, о которых стоит беспокоиться.
  • Это все с открытым исходным кодом.
  • NumPy, SciPy и MatPlotLib делают большую часть того, что мне нужно.
  • Я могу взять свой код и легко интегрировать его с кодом на основе сокетов, чтобы общаться с инструментарием. (Мне нравится иметь возможность сгенерировать сигнал, загрузить его в генератор функций, дождаться срабатывания осциллографа, получить его трассировку и статистику и поместить все это в цикл.)
  • Я могу интегрировать это с PyGtk, PyQt , веб-сервер, генератор PDF (ReportLib) и неизвестно что еще.
  • Я могу отправить свой код на основе Python без лицензирования или лицензионных отчислений.
  • Python намного лучше для дисциплинированной разработки программного обеспечения, чем Matlab. В Matlab есть одна функция для каждого файла и один каталог для каждого класса.
  • Python легче расширить с помощью кода C и C ++. Библиотеки там лучше.

Просто мысль.

ЛЕТ СПУСТЯ РЕДАКТИРОВАНИЕ: Существует инструмент Mac DVCS под названием SourceTree , которым я очень доволен. Он поддерживает как Git, так и Mercurial и доступен бесплатно в App Store.

16
ответ дан 28 November 2019 в 18:04
поделиться

Плюсы Git:

  • Сверхбыстрый (хорошо масштабируется для очень больших проектов)
  • Исключительная гибкость
  • Инструменты C, которые хорошо вписываются в философию Unix

Минусы Git:

  • Крутая кривая обучения
  • Инструменты с графическим интерфейсом существуют, но (IMO) не так уж и хороши

HG Pros:

  • Очень быстро (хотя и не так быстро, как GIT) - задержки не должны быть серьезной проблемой для проекта размером 15-20 тыс. lines
  • Хорошие инструменты с графическим интерфейсом, даже в Windows (TortoiseHg хорош и очень зрел, есть и другие)
  • Хорошо документированы, и даже версия для Windows имеет красивый графический интерфейс с графическим представлением наборов изменений
  • Немного более легкая кривая обучения, чем GIT (imo)

HG Минусы:

  • Несколько медленнее, чем git
  • Возможно, немного менее гибкий

Есть и другие существенные различия, но, на мой взгляд, они наиболее значимые. Честно говоря, если бы я в основном работал с Windows, я бы, вероятно, выбрал Mercurial.

18
ответ дан 28 November 2019 в 18:04
поделиться

По вашему мнению:

  • Mercurial лучше для пользователей Windows - проще в установке, без дурацких повреждений терминала :) - в основном больше с меньшими затратами , ИМХО.
  • Git быстрее Mercurial - тесты показывают это. Как вы сказали, это потому, что Git написан на C. Я не считаю, что Mercurial медленный, если честно.
  • Если ваш друг использует Mercurial, используйте Mercurial для этого проекта. Они очень похожи по своему базовому интерфейсу и функциональности - я мог легко подобрать Hg из Git.
  • Я могу ошибаться, но я считаю, что у Git более широкое сообщество пользователей, вероятно, из-за его использования ядром Linux.
  • Спасибо комментаторам: Git имеет Github - один из лучших сайтов для размещения кода когда-либо . (Поверьте мне!)
  • Многие громкие проекты используют Git (ядро, Rails, JQuery) - интересна страница репозиториев Github - я поражен тем, сколько проектов я узнаю и использую ежедневно используйте Git!
  • У Mercurial есть действительно очень хорошее руководство, написанное Джоэлом Спольски на hginit.com . Это лучший учебник по управлению версиями, который я когда-либо читал! :)
9
ответ дан 28 November 2019 в 18:04
поделиться

Я не могу говорить о Mercurial, но я могу подтвердить, что git написан на C. Взгляните на gitweb для источник.

Что касается необходимости в командной строке для всего, что связано с git, то это не обязательно. Есть инструмент под названием TortoiseGit , который интегрируется с оболочкой проводника и будет управлять вашими репозиториями git за вас - если вы используете Eclipse, есть также EGit . В Linux есть QGit, хотя интерфейс командной строки намного мощнее.

Я разработчик Linux / C и, естественно, предпочитаю Git; Я тоже слышал много хорошего о Mercurial, но никогда не удосужился его изучить.

1
ответ дан 28 November 2019 в 18:04
поделиться

Я порекомендую hgbook (Mercurial: The Definitive Guide) и hginit (Hg Init: Mercurial Дружественное введение в Mercurial DVCS от Джоэла Спольски.)

См. также мой ответ в Git and Mercurial - Compare and Contrast SO вопрос.

5
ответ дан 28 November 2019 в 18:04
поделиться

Если вам нравится git, я сомневаюсь, что существует настоящий веская причина переключиться, хотя мне очень нравится Hg. В Git есть TortoiseGit / GitCheetah, хотя я думаю, что TortoiseHg немного лучше и стабильнее IMHO.

Возможно, вы захотите посмотреть это бесплатное видео об использовании Hg и TortoiseHg (а также надстройки Visual Studio Hg) на tekpub / codeplex . Видео даст вам почувствовать Hg.

4
ответ дан 28 November 2019 в 18:04
поделиться

Мой переход от Git к Mercurial был намного проще после прочтения A Guide to Branching in Mercurial, в котором также упоминается способ ветвления Git.

Если у вас есть IIS 7, вы можете легко настроить сервер Mercurial: Настройка сервера Mercurial под IIS7 на Windows Server 2008 R2, и вы можете легко найти учебники с помощью IIS 6 или Apache2. Конечно, для быстрой синхронизации hg serve неоценимо: использование "hg serve" для проталкивающих изменений

Интеграция Visual Studio:

Бесплатный хостинг:

Для руководств и учебных пособий вы можете начать с Mercurial wiki.

6
ответ дан 28 November 2019 в 18:04
поделиться

Разберу по пунктам...

Я считаю Hg относительно интуитивным, простым в использовании и, когда это не удается, хорошо документированным.

Mercurial имел преимущество в Windows, но я считаю, что Git улучшился и там, так что это, вероятно, не очень хороший дифференциатор.

Что касается пользовательских интерфейсов, вы можете рассмотреть TortoiseHg (интеграция оболочки Windows, которую вы упомянули), если вам не нравится командная строка. Работая под Windows, я вас не виню. :)

Mercurial создает репозитории так же, как и Git: один скрытый подкаталог под корневым каталогом. Вы можете перемещать его как угодно (положить на палку, перенести в другое место и т.д.) Почему это было проблемой в svn?

Я рад сказать, что, рассматривая Hg как инструмент для выполнения работы, я не чувствовал необходимости в поиске "хорошей книги". Возможно, они есть, но доступные онлайновые документы были более чем достаточны для того, что я хотел сделать.

Хотя Git хвастается своей скоростью, неясно, быстрее ли он Mercurial, но это спорный вопрос: они в любом случае очень быстры.

Перефразируя мой собственный блог пост на эту тему, я думаю, что очень важно то, что Git не может избавиться от репутации трудного в работе. Цитата, на которую я несколько раз натыкался, иллюстрирует это лучше, чем все, что приходит мне на ум: "Git изменился, чувак! Он не такой, как раньше, теперь он полностью интуитивен! Ты просто должен узнать, как он хранит данные!"

В заключение хочу сказать, что я являюсь пользователем Mercurial (я не использовал Git, но немного читал о нем), и редко когда я получаю удовольствие от использования программного продукта, потому что 95+% времени они сырые, имеют неровные края, ошибки и т.д. Mercurial - это действительно решение, которое я с удовольствием использую и от души рекомендую!

6
ответ дан 28 November 2019 в 18:04
поделиться
Другие вопросы по тегам:

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