Ответы пользователя по тегу Git
  • Как вы осуществляете commit в git?

    Если над проектом Вы работаете один, то делайте так, как Вам удобнее (мне кажется, в этом случае удобно вести просто прямую линию разработки).
    Но вот если у Вас над проектом работает несколько человек, то делать rebase в основную ветку в принципе нельзя — Вы принесете кучу проблем своим коллегам. Сделали мердж — всем все видно, у людей нет проблем с впихиванием своей работы.
    И я не вижу пробел в большой количестве merge — да, история ветвистая, да, ее сложнее понимать какому-то стороннему человеку, зато видно все, и проект может без проблем для разработчиков масштабироваться.

    Могу порекомендовать Вам вот эту статью, для осмысления workflow.
    Ответ написан
  • Какую систему управления версиями посоветуете?

    На Хабре уйма статей про VCS, со сравнением и священными войнами в комментах.
    Я бы сразу вычеркивал из этого списка SVN — централизованная система со всеми присущими ей проблемами (упал сервак — потеряли код; нет копии сорцов у каждого разработчика и т.д.), нелогичное ветвление (считай, его отсутствие) и прочее.

    Выбирать есть смысл из Git и Mercurial. На гите сидит больше народу, есть куча мануалов, howto, обучалок и прочего. Если интересует свой корпоративный сервак, есть отличный фронтенд Gitlab, а если разрабатываете opensource или есть деньги, можно захоститься на популярном Github.
    Для Mercurial есть замечательный Bitbucket (хотя, git они тоже поддерживают).
    Удобства работы с консолью, ровно как и работа с GUI для этих систем я бы поставил на один уровень.
    Идеологически системы по-разному хранят историю. На гите огромные репозитории (от 1Гб, хотя для Вас это вряд ли актуально) работаю плохо из-за хранения полных слепков файлов, на mercurial хранятся мелкие изменения, поэтому репозитории не такие жирные. В целом, для подавляющего большинства проектов на эту разницу можно забить.

    Я использую Git, и не имею с ним никаких проблем. Очень хорошая, продуманная и быстрая VCS.
    Ответ написан