Notice: Memcache::get(): Server localhost (tcp 11211) failed with: Connection refused (111) in /home/a146/www/we.easyelectronics.ru/engine/lib/external/DklabCache/Zend/Cache/Backend/Memcached.php on line 134
Опрос по системам контроля версий / Софт для электронщика / Сообщество EasyElectronics.ru

Опрос по системам контроля версий

Однажды на работе я пытался доказать необходимость внедрения системы контроля версий для кода прошивок и других программ. Одним из аргументов была ссылка на опрос на Stackoverflow. Согласно статистики, только 9,3 % из 16,5 тысяч опрошенных разработчиков не пользуются контролем версий. Мне на это ответили, что среди отвечавших мало тех, кто пишет прошивки для микроконтроллеров.

Предлагаю всем, кто занимается разработкой прошивок для МК, ПЛИС и тому подобного и просто электронщикам или близким к этой теме, поучаствовать в опросе. Опрос проводится с помощью Гугла, к сожалению на этом сайте нет этого механизма. (Как оказалось, есть.)

Результат можно посмотреть в таблице с графиками. Думаю закрыть опрос примерно через неделю, когда перестанут поступать ответы. Сделаю отдельный пост с результатами.

Опрос "Контроль версий для электронщиков".

Комментарии (105)

RSS свернуть / развернуть
У нас стоит redmine + svn/git.
Самая проблема не исходники кода хранить там, а схемы и библиотеки.
+1
  • avatar
  • Wic
  • 19 марта 2016, 12:34
«схемы и библиотеки» — немного потерял мысль… а в чем проблема? Вот к примеру альтиум умеет работать с SVN, и даже вроде нормально работает :)
0
VCS по большей части фигово поддерживают бинарные файлы. Ни диффов вменяемых, ни слияния. К тому же, многие еще и не умеют бинарные файлы эффективно хранить, и гит — в их числе.
0
Всё именно так. Бинарные файлы портят всю малину.
0
У меня в этом проблем как-то нет…
Дифы по коммитам альтиум показывает, коменты в комитах тоже…
Что еще нужно, ума не приложу…
0
Да, для некоторых форматов есть вменяемые внешние диффилки. И мержилки. Правда, они не могут пользоваться всем тем, что делает мерж в гите таким безболезненным (а этот момент — одна из основных киллер-фич гита).
0
Когда мистер VGA наконец поймет что такое плата и схема, возможно он сообразит что имеющегося функционала по работе с SVN достаточно.
-2
Когда мистер shodan наконец поймет, что такое мерж и ветки, возможно он сообразит, почему схемы, платы и прочие бинарные файлы портят всю малину.
+1
Vga, какой вы однако упертый хер :)
-1
От упертого хера и слышу.
-1
Да и я рад знакомству (с)Хер
-1
PS. Vga тут про слияние писал… гы гы гы… ржу… под сталом… слияние схем КАК ты себе премставляеш? А слияние плат? Панелизацией чтоли? гы гы гы… :)

По поводу «эффиктивно хранить»… вроде как место на дисках давно уже терабайтами исчисляется.
0
Ты вообще знаешь, что такое слияние (merge) и VCS? Похоже, что нет. И сырки ты видимо тоже конкатенацией мержишь?
По поводу «эффиктивно хранить»… вроде как место на дисках давно уже терабайтами исчисляется.
Проблема достаточно серьезная, на самом деле. Хотя для ее решения уже запилили какой-то костыль к гиту.
Забавно, но это один из немногих моментов, где SVN реально дает прикурить гиту.
0
А при чем тут гит? Альтиум гит не поддерживает.
0
А причем тут альтиум? Речь идет о взаимодействии VCS и бинарных файлов, к которым относятся и схемы.
0
Вот я и говорю хер… при том довольно таки упертый…
Функционал есть, он устраивает, его хватает…
Тебя не устраивает, тебе не хватает, проблемы твои :)
-1
проблемы твои :)
Вот я о них и говорю. А ты пришел и даже не поняв вопроса заявляешь, что у тебя проблем нет. Ну, рад за тебя.
0
Ну вот ты же не обяснил как ты видишь себе мерж схемы, и мерж платы. А только радуешся как дурочек непонятно чему. И что-то доказывать пытаешся…
-2
Так же, как и мерж сорца. Есть две или три версии схемы (типичный набор — базовая на момент создания ветки, модифицированная из ветки, фикшеная из мастера), надо из них собрать одну, правильную (тобишь как правило включающую и фиксы из мастера, и модификации из ветки).
Для текстовых файлов средства уже встроены в VCS (причем гит любят именно за то, что он способен в подавляющем большинстве случаев все сделать сам), то с бинарными обычно все куда хуже. Вплоть до того, что может потребоваться открыть все три файла в редакторе и вручную сравнивать и переносить изменения.
0
А ну теперь понятно как ты себе это представляешь. Это только для простых правок будет работать, а для чего-то маломальски глобального, нет. Всеатки надо немного понимать что схема и плата, это не кусок текста с сырцом.

Разве что отправь пожелания в почту альтиумавцем, я уверен они запилят что тебе надо, если ты крупный клиент :)
-3
Банально, поставил я разрабу задачу плату перетрассировать плату с плотным монтажем из за уменьшение размера на 5%. Это аналогично тому что в сырце переписать весь код…
Просто представь ситуацию…

Понятно когда 2-3 номинала в схемотехнике меняешь, это рабоать будет, а если что-то глобально… это пздц!
-1
После глобального рефакторинга кода ситуация не лучше.
0
«После глобального рефакторинга кода ситуация не лучше.» — ага ну тоесть возвращаемся к нашим баранам, мерж не применим в большенстве случаев. А там где применим, можно обойтись встроенным функционалом и полу-ручным режимом работы.
0
Изменения такого масштаба случай достаточно редкий. А вот мерж мелких изменений — чуть ли не повседневный.
0
У меня таких задач в год от 2-х до 5-ти штук. Если бы даже был бы нужный функционал мержа, я с бАААльшим трудом представляю как с этим можно работать.
И порой сталкиваюсь с тем что паралельная группа «PCB дизайнеров» отдизайнела плату по другому, а я по другому и некоторые правки надо-бы смержить, но вот незадача, если бы даже мерж был, он бы не работал в принципе. В таком контексте вопроса.
0
Вот простой пример, замена на плате одной детальки, затрагивает довольно большой регион. Мержить «это» явно уже не вариант… а ведь суть то в простой замене одного датчика
www.youtube.com/watch?v=K4UNUtp9G8M
0
А почему бы и не вариант, если изменение другой ветки — в другом регионе?
Но в любом случаев, все сводится к тому же — с бинарными файлами VCS работают куда хуже, чем с текстовыми. На что корневой комментарий и жаловался.
0
К слову, в последних иглах (где-то с 6-й версии) файлы схем, плат и либ — текстовые, к тому же XML. «Сдается мне это ж-ж-ж неспроста» (с) мультик :)
0
evsi — мне видится мержинг xml с платой еще более ущербным чем ручная ее перерисовка и копипаст нужных регионов.
Ну это так к слову…
0
evsi — мне видится мержинг xml с платой еще более ущербным чем ручная ее перерисовка и копипаст нужных регионов
Автоматический — может быть. Ручной мерж вполне имеет право на жизнь, особенно если добавить изображение с подсветкой той части, которая мержится. В случае с XML это вполне реализуемо.
0
«Ручной мерж вполне имеет право на жизнь, особенно если добавить изображение с подсветкой той части, которая мержится.»
Ну это уже некоторое время как есть
techdocs.altium.com/display/ADOH/Collaborative+PCB+Design

Ходим, гуглим, радуемся.
0
Вы же я вижу хотите чего-то явно большего… на эту тему я уже писал тут…
0
Ну это уже некоторое время как есть
Гут. Тогда какие проблемы с мержем, в таком случае?
Ходим, гуглим, радуемся.
Так кто ж вам мешает? Ходите, гулите, радуйтесь, что разработка схем и плат потихоньку дотягивается до инструментария, который в разработке софта существует уже больше двух десятков лет. Это, во всяком случае, куда лучше, чем говорить глупости вроде «как ты себе представляешь слияние схем и плат».
0
Ну ВГА же не устроило то что есть… я РЕЗОННО поинтересовался как он представляет это…
А он начал пальца кидать :)
0
Вариантов, на самом деле, множество. Вопрос только в инструментарии.
0
Да… вы правы… только не ясно «пальцА мистера VGA» это каком инструментарий, оборанительный от незнания, или наступательный от упертости? :)
0
Вас интересует инструментарий или поведение конкретного человека?
0
Mеня в ващей флудерской санере повествования пожалуй не интересует ни то ни другое… (под вами я имею в виду завсегдатых сего ресурса). хи-хи…
0
под вами я имею в виду завсегдатых сего ресурса
Как интересно. То есть вы автоматически занесли во флудеров всех (ну или, как минимум, большинство), кто пишет на этом ресурсе? Что-то мне подсказывает (например, содержательность и вид публикаций), что в категорию флудеров с куда большей релевантностью попадает вы сами :)
+1
Специфика ресурса такова, что пожалуй да… занес…
Какой нормальный человек будет устраивать срачи из темы не стоящий выеденого яйца, протеженностью по 700 и более комментов…
Короче, смеритесь… вы флудеры!
-4
Какой нормальный человек будет устраивать срачи из темы не стоящий выеденого яйца, протеженностью по 700 и более комментов…
Какой нормальный человек будет называть других флудерами только потому, что обсуждаемая тема ему не интересна? :)
Короче, смеритесь… вы флудеры!
Я за последний год написал на ресурсе, пожалуй, меньше вас. Так кто из нас флудер?
+1
Годный срач на пару тысяч коментов это не флуд)) А душевные ламповые бои сознания людей!
0
Дело тут не в VCS, а в ущербности самой идеи применять VCS для плат и схем. Мое мнение, надо придумывать что-то более изящное чем существующие реализации гита и свн. Их проектировали изначально для кода.
Такое применение реализовано в альтиуме на столько, на сколько ущербна сама идея свн-ов и для альтия.

А простите сударь, «жаловаться» можно на что душе угодно!
Если тут каждый жаловаться начнет, ситуация не сдвинется с места… ну разве что сей ресурс из «флудерского» превратится в «отборное Г...»
0
Дело тут не в VCS, а в ущербности самой идеи применять VCS для плат и схем.
То, что вы не представляете как это сделать вовсе не делает идею ущербной.
0
Для меня, делает… простите за тафталогию.
-1
В данном случае дело не в идее, а в вас. Точнее, в вашем отношении к ней (хотя оно ничем не обосновано).
0
Чем я должен обосновать свой довод о том что полный мерж PCB/SCH нормальный разраб делает только вручную?
Хотя… стоп… нафига мне это вообще обосновывать… гы-гы…
0
Чем я должен обосновать свой довод о том что полный мерж PCB/SCH нормальный разраб делает только вручную?
Когда-то ровно такая же ситуация была и с сорсами. Потом научились это автоматизировать, хотя бы некоторое количество частных случаев. Не вижу причин, по которым это было бы невозможно сделать для плат и схем.
Хотя… стоп… нафига мне это вообще обосновывать… гы-гы…
Ну вы же утверждаете что-то. Вот вам это утверждение и обосновывать.
0
Аналогично. Изначально ставил Redmine+SVN для себя и ещё пары коллег, потом ещё git добавили. Сейчас редмайном пользуется вся компания от бухгалтерии до производства, а VCS — весь отдел разработки включая конструкторов и техписов.
0
А вот как у вас получилось, что стали все пользоваться? Я своим всем предлагал, интерес был, но освоение шло очень тяжко.
0
Достаточно показать дифф между двумя любыми версиями и возможности отката/наката, чтобы загорались глаза и чесались руки :)
0
И увидел Он, что это хорошо. И сказал Он, «Да будет Redmine и VCS»!

Для выхода на общеконторский уровень, конечно, потребовался направляющий пинок со стороны директора и пара теоретическо-практических семинаров. А внутри отдела оно как-то более менее само расползалось на фоне удобного трекинга (как задач, так и исходников), совместной работы (необходимость взаимодействовать, обсуждать что-то и раскапывать потом результаты этих обсуждений), веры в отказоустойчивость (регулярные бекапы баз SVN на стороне сервера) и прочих плюшек. Конечно процесс был не быстрый, первый коммит в репе датируется февралём 10-го года, первая задача в РМ датируется февралём 12-го года, а первый заказ на изготовление приборов мы глобально провели через РМ в начале 14-го года. =)
0
Лажовые разработчики значит опрашивались!!!
Без контроля версий сейчас никуда!
Я вот прошел некоторый миграционный путь: SVN -> Git на гитхабе -> Git на своем серваке.
Незнаю чтобы я делал без контроля версий… это былабы полная кодическая жопа :)
+1
«Мне на это ответили, что среди отвечавших мало тех, кто пишет прошивки для микроконтроллеров» — для мигания лампочкой, ДА! действительно не обязательно. А для проекта более менее среднего, очень нужная штука. Естественно с оговоркой, что проект будет поддерживаться и развиваться. В этом случае без гита никуда… Особенно если это хобби проект, который далается эпизодически в свободное от работы время и растягивается на года.
0
Опрос проводится с помощью Гугла, к сожалению на этом сайте нет этого механизма.
А это что?
0
  • avatar
  • Vga
  • 19 марта 2016, 13:06
Черт, эти кнопочки должны быть побольше.
+1
А как такой опрос в гуглодоках создавать?)
0
Гугл Формы называется.
+2
О, не знал. Благодарю)
0
Вообще странно слышать, что в 2016 году Вам приходится доказывать кому-то, что СКВ необходимая вещь на работе. Я вот честно не представляю как без нее можно работать в команде.

А какие у ваших оппонентов были контраргументы? Поднять север GIT (например) – это час работы, покупать ничего не нужно, настроил и работай. Не понимаю, какие могут быть аргументы против СКВ.
+3
У нас в основном не командные проекты. В этом и состоит главный аргумент, который приводят разработчики, мол, СКВ полезно, когда разработчиков больше 2. А начальство не видит потребности. Вообще звучит много отговорок, но я думаю проблема в том, что люди не хотят осваивать что-то новое для себя. Надо учесть, что СКВ штука не простая.
0
В этом и состоит главный аргумент, который приводят разработчики, мол, СКВ полезно, когда разработчиков больше 2.
СКВ полезно всегда, а когда разработчиков больше 2-х она не просто полезна а жизненно необходима.

 но я думаю проблема в том, что люди не хотят осваивать что-то новое для себя.
Похоже на то.

Надо учесть, что СКВ штука не простая.
Для бухгалтера или там секретаря — возможно это и сложно, но что там такого сложного для профессионального разработчика?
+4
Надо учесть, что СКВ штука не простая
Для этого и придуман клиент SourceTree
0
А зачем для этого начальство? Поднимайте да юзайте. VCS — это не для начальства, это инструмент разработчика. Или у вас без воли начальства никакой софт на компы ставить нельзя?
Такие штуки зачастую разработчики сначала внедряют сами где-то на своих машинах, а потом оно уже либо само мигрирует на корпоративные ресурсы, либо так и остаётся в ведении отдела разработки.
+1
Сервер есть, но им пользуюсь только я. Другие разработчики не хотят, поэтому проблемы с исходниками приключаются, когда разработчик увольняется. Я думаю сохранность исходников больше руководство должно волновать.
0
Другие разработчики не хотят, поэтому проблемы с исходниками приключаются, когда разработчик увольняется.

Коллега, раз Вы решили донести до руководства необходимость использования СКВ — то лучше приводить именно такие (практические) аргументы. Типа «У нас уволился Петя, который работал над проектом SkyNET. В итоге, на его компе мы нашли папки

SkyNET.test
SkyNET.last_test_stable
SkyNET.no_errors
SkyNET.no_errors_12
SkyNET.new
SkyNET.Т1000
...


И вот во факту нельзя понять, что в этих папках, где последняя версия кода и т. д. А вот если бы он использовал СКВ — все было бы по другому». Это объективный (для руководства) аргумент.

А вот статистика (а я не сомневаюсь, что она будет в вашу пользу) — это слабый аргумент. Например, предположим, что 90% эмбеддеров имеют аккаунт в социальных сетях. Но ведь это не значит, что введя обязательную регистрацию сотрудников в соц. сетях мы получим проффит.
+3
Мне на это ответили, что среди отвечавших мало тех, кто пишет прошивки для микроконтроллеров.

Странная логика.
0
Там по статистике, под встраиваемые системы разрабатывают всего 3 % участников. Так что для нашей среды 90 % за СКВ ни о чем не говорит. Такая логика.
0
Смелый вывод…

Но ваш опрос в любом случае интересен.
0
Логика действительно странная, ибо с точки зрения СКВ абсолютно нет разницы пишем ли мы для ПК или МК. И статистику бы я озвучил так: «90% уже пользуются СКВ а 10% еще пока не освоили СКВ». Я не знаю ни одного человека, который бы освоил СКВ, а потом отказались от ее использования. Это как и с другими инструментами — познакомишься с нормальной IDE и потом писать код в «блокноте» ка-то не очень хочется :)
0
Lifelover вроде знаком с VCS, но не юзает.
0
Ну вот, Вы так взяли и испортили мне красивую статистику :) Теперь я знаю одного человека, который добровольно отказался от VCS. Но, зная коллегу Lifelover, я не очень удивлен.
+2
А как на гугле посмотреть на результат голосования? Оно предлагает голосовать повторно, а ссылки на результаты не вижу.
0
  • avatar
  • Vga
  • 19 марта 2016, 19:33
А как на гугле посмотреть на результат голосования?
Сделаю отдельный пост с результатами.
-1
В Гугл Формах я не нашел такой возможности.

Но результат экспортируется в таблицу. Можете в ней следить за результатами.

Всего 54 проголосовавших. Да — 70 %. Git — 58 %.
+1
С тех пор как научился работать с СКВ использую их постоянно. Например при редактировании презентации для доклада на конференции первым делом создал РЕПО.
Главная идея: я вношу правки и не думаю — удалять/менять что-то или лучше оставить — вдруг потом пригодиться (всегда можно вернуть как было). + всегда можно сравнить 2 версии и на это понадобиться 10-15 секунд. И ТОЧНО УВЕРЕН, ЧТО ЭТО ТЕ САМЫЕ ВЕРСИИ!
+6
Довольно полезно для профессиональной деятельности — когда над проектом работают несколько человек. Либо когда нужно разветвлять работу над проектом, т.е. иметь возможность чинить по необходимости стабильную версию и одновременно в другой копии вести капитальные переделки, по завершению которых их объединить.
В домашних условиях — бесполезный гламур для тех кто не может придумать интересных технических задач и вместо этого обвешивается рюшечками. На это сейчас, впрочем, 95% ориентировано.
-2
Зачем этот опрос? Напиши статью в стиле «Как начать пользоваться системой контроля версий», что качать, как устанавливать, как интегрировать в авр студию или кокос. Я бы пользовался.
0
Опрос нужен мне, чтобы доказать некоторым людям, что контроль версий популярен в нашей среде.

Чтобы научиться контролю версий, советую выбрать Git и почитать титаническую книгу Pro Git (2-е издание). Если какие-то главы окажутся не переведенными, то смотрите 1-е издание. В качестве графического интерфейса можно использовать Tortoise Git.

А статьи будут со временем.
+1
Пользуюсь git, хоть моя команда и состоит из одного меня :) У меня компы дома и в офисе + ноутбук для поездок. Держать в 3х местах актуальные версии необходимо. Можно, конечно использовать флешку или переносной винт, я так делал раньше, когда интернет был медленным и дорогим. А сейчас все проблемы решает git.
+5
SourceTree (встроенный HQ workflow) + BitBucket.
Хотя в одиночку, для себя, хобби и т.п.
Причина предельно проста: УДОБНО.
0
Не пользуюсь и не вижу смысла. Для одного человека не суметь разобраться в собственном коде? Это полный пипец…
-1
VCS не имеет отношения к «разобраться в собственном коде».
+3
«Не читал, но осуждаю!»
-1
Коллега Vga выше правильно сказал, дело не в «разобраться в коде».

Вот банальный пример: я начинал делать девайс на одних датчиках, потом перешел на другие. Если понадобится вернутся на старые датчики — достаточно взять из старых коммитов нужный код. Потом я много экспериментировал с алгоритмом фильтрации. Все эти эксперименты в виде отдельных веток хранятся в GIT, если мне вдруг захочется опять вернуться к фильтру Калмана — достаточно переключить ветку (при необходимости смержить) У меня есть вся история изменения кода, в одном месте, все структурировано, с комментариями, все разложено по веткам и т. д.
+3
У нас есть обычай — каждый день писать отчет о свершенных трудовых подвигах.
Будь я начальником, предписал бы прикладывать к каждому пункту номер ревизии в репозитории :)
А пока ещё нет, намекать не буду :)
0
У нас есть обычай — каждый день писать отчет о свершенных трудовых подвигах
Это не эффективно. Ваше непосредственное руководство должно и так всегда знать над чем Вы работаете (для этого есть всякие scrum митинги или просто общение внутри команды). А вышестоящее руководство эти отчеты как правило не читает (некогда, да и для них там мало что понятного и интересного :) Эти отчеты – трата времени и иллюзия контроля успеваемости.

А вот ставить ссылку в коммите на номер задачи (бага) в системе ведения таковых – обычная практика. Не для контроля успеваемости, а для того, чтобы можно было получить больше информации. Я вижу, что коммит относится к исправлению бага №1234, могу полезть в багтреккер, найти баг, почитать описание и комментарии к багу.
0
Отчеты — чтобы списывать трудоемкость по темам
0
А как это выглядит? Сначала оценивается трудоемкость задачи в человекочасах а потом на основании отчета списываются фактически затраченные человекочасы?
0
Ну, типа того. А когда подходит время закрывать этап, идет разбор полетов. Кто, почему и зачем.
0
На предыдущей работе была традиция писать план на завтрашний день и неделю себе + подчиненным… также подотчетные мне писали план себе сами на след.день и неделю. В день на эти планы тратился как минимум пол часа (у подопечных) и у меня с часа полтора. + каждый день по концу дня отчитывались директору + в пятницу недельный итоги. И каждый раз звучала фраза от него: «каким хуем Вы все занимаетесь, ничерта не успеваете...» Короче пиздец как время на всякое говно тратилось… цирк одним словом=))
0
Ну, как минимум статистика набирается. Да и какие-никакие, а вехи остаются.
0
Какие вехи? Макулатура и просранное время))
0
Угу. Я в своей жизни писал и читал (или не читал) множество разных отчетов о проделанной работе. Все они были разными по форме содержанию и объему. Единственный тип отчетов, которые я пока не видел — это полезные отчеты :)
0
Последний время там я просто переписывал даты с предыдущих месяцев, ну и номера объектов с которыми работы шли, чтоб к реальности привязка была=)) Потом случилось прекрасное, уволился с удовольствием=))
0
Файл на компьютере (многолетний) и лишний повод задуматься о бренности бытия :)
0
А начальнику тоже файл показывать в конце чекпоинта? с пометками о выполнении визами всех контрольных и не очень начальников, ОТК, хуйов, собственной подписи, подписи исполнителя и т.д.? потом с его же подписью и вердиктом о том что он рассмотрел этот план и отчет на каком то там сборище, утвердил, отклонил, перенес=))
В моем случае это были глобальные проблемы планирования производства разведенные рукожопым и маразматичным руководством-))
0
Я делаю немного по другому. Весь код работающий с разным оборудованием переношу в подключаемые файлы, которые в свою очередь подключаются к проекту средствами условной компиляции. Т.е. в зависимости от примененного дефайна получаются разные прошивки…
+1
Это вопрос полностью ортогональный системам контроля версий. Для одиночки VCS — это прежде всего хранение истории разработки проекта и синхронизации между разными машинами.
Заодно избавляет от мешка резервных копий проекта от разных дат, как это встречается у некоторых разработчиков. С VCS достаточно иметь свежий бэкап репозитория (причем его свежесть в случае DVCS можно поддерживать автоматически).
+2
Упс, еще ветки забыл. Но SVN-щику это простительно)
0
Весь код работающий с разным оборудованием переношу в подключаемые файлы, которые в свою очередь подключаются к проекту средствами условной компиляции.

Это другое. Если бы я хотел сделать поддержку 2 типов датчиков одновременно – я бы тоже разрулил директивами условной компиляции. Но мне с одной стороны не нужна поддержка старых датчиков, с другой – «выкидывать» тот код не хочу, он может пригодиться. Аналогично с фильтрами – мне не нужно 3 фильтра в основном проекте, мне нужен один, самый эффективный. Но выбрасывать тестовый код, где я пытался реализовать фильтр Калмана нельзя, я планирую вернутся и его таки доделать, у меня на него большие надежды.

Если «прятать» весь тестовый код, весь устаревший код в основном проекте за директивами условной компиляции – это сильно замусорит основной код. А вот СКВ позволяет мне держать чистой от «мусора» основную стабильную ветку, но при этом все мои тестовые наработки, весь старый код, вся история изменений мне тоже всегда доступны.
+4
Не пользуюсь и не вижу смысла.
А вы попробуйте. И смысл станет понятен.
Для одного человека не суметь разобраться в собственном коде? Это полный пипец…
Охх. Речь ведь вовсе не в том, что бы разобраться. VCS это, в первую очередь, свобода изменений без риска потерять или испортить что-либо.
Представьте себе ситуацию: вы пилите какой-то проект и тут на глаза попалась полезная информация, которая может существенно повлиять на то, что вы делаете. А может и не повлиять. Иначе говоря — нужен эксперимент. Если делать это без VCS, то прийдется или сделать целиком копию проекта, либо сохранить часть (или все) файлы. Если получилось, то старые файлы оказываются благополучно забыты. Если же не получилось, то начинаются мучительные восстановления файлов. С VCS это делается куда как проще — создал бранч, переключился на него и пробуй сколько угодно. Пошло — смержил. Не пошло — удалил бранч. И никакого риска, что какой-то файл нельзя восстановить к исходному состоянию. Ситуация становится особенно веселой, когда в процессе эксперимента обнаруживаются ошибки в имеющемся коде (или просто появляется идея как можно изменить и улучшить код, который не относится к эксперименту). Тогда по окончанию неудачного эксперимента начнется геморройная работа по переносу этих изменений. С VCS это в разы проще и удобнее делать.
+3
По-моему, не надо было делить SVN и TortoiseSVN
Система-то по сути одна, разница в клиентах.
0
А там нет такого варианта. Это кто-то в Other написал. И не только TSVN, кстати, еще и THg есть, а может и TGit/ST/etc.
0
Надо же, кто-то Fossil юзает. Расскажи о впечатлениях)
0
  • avatar
  • Vga
  • 21 марта 2016, 16:54
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.