|
|
|
Тупой вопрос - как объяснить 50-летнему чайнику про SVN? |
|
|
|
Oct 23 2014, 09:19
|
Ally
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050
|
Цитата(Rst7 @ Oct 23 2014, 11:04) - Несколько раз смотрел настройки по умолчанию для софта приборов ревизии такой-то (специально пользуюсь дополнительной утилитой, чтобы автоматически вставлять в какое-то место исходника номер версии, чтобы его можно было, например, на ЖКИ или в веб-интерфейсе прибора отобразить). Выглядело так: звонок заказчика "а какой IP по умолчанию?", я прошу клиента поглядеть номер ревизии, далее беру из репозитория файл именно этой ревизии, и, соответственно, отвечаю без ошибок В таких случаях всегда молча высылаю последнюю версию firmware клиентам. У меня клиенты имеют всегда самый новый софт и единообразную документацию. Старые версии никогда практически не нужны. Нужды в SVN соответственно нет. Цитата(Rst7 @ Oct 23 2014, 11:04) - Полностью забыл, что такое носить исходники на на каком-либо внешнем накопителе, репозиторий хранится на сервере в интернете. Вообще не вижу смысла в исходниках без среды разработки. Поэтому всегда и везде с собой ношу рабочий компьютер с развернутой средой и средствами отладки. В любых ситуациях: на улице, в цеху, у клиента в офисе могу открыть проект, запрограммировать новую фичу или отладить баг. Цитата(Rst7 @ Oct 23 2014, 11:04) - Совершенно спокоен за резервное копирование. Мало того, что репозиторий на сервере регулярно бэкапится, так еще и найдется несколько компьютеров, на которых есть локальные копии последних ревизий (после checkout'а). Так что даже если совсем форс-мажор, то самые свежие ревизии у меня найдутся. При современном качестве носителей две копии держать рисковано. Держу для важной информации всегда три копии в разных физических местах. Цитата(Rst7 @ Oct 23 2014, 11:04) - Взял в привычку складывать рядом с файлами-исходниками проекта всякие даташиты, небольшие утилитки, и коммитить их тоже. Зато потом организация рабочего места на любом компьютере при наличии интернета производится за полчаса - вытаскиваем SVN-клиента, идем в закрома, вытаскиваем необходимый компилятор, делаем checkout, весь джентльменский для продолжения работы над проектом уже есть. Современный сложный проект встраиваемой системы на любом рабочем столе не открыть. Там одна модель дивайса в SolidWorks может под гигабайт занимать, Altium с библиотеками тоже гигабайты. Надо иметь всегда с собой свой компьютер. SVN получается годен только для чего то мелкого или частного. Цитата(Rst7 @ Oct 23 2014, 11:04) - Пишу довольно развернутые комментарии при Commit'е. Не то, чтобы сильно часто приходилось искать, где я и что делал (ну может несколько раз), но зато вполне дисциплинирует, и я точно знаю, что если мне понадобится найти какую-то правку, то займет у меня это достаточно обозримое время. Ах да, еще очень желательно писать по чьей просьбе или требованию в проект внесены какие-то правки, например, в основном алгоритме. Позволяет, вдруг что, с железной уверенностью послать какого-нибудь искателя виноватых в маленькое эротическое путешествие. В большинстве случаев нельзя в паре строчек описать всю суть обновлений. Поэтому короткие комментарии чаще всего вводят в заблуждение. Цитата(Rst7 @ Oct 23 2014, 11:04) - Ну и после всего вышеперечисленного, повышение душевного спокойствия - оно ж просто бесценно Душевное спокойствие это когда твоя любимая работа всегда с собой.
|
|
|
|
|
Oct 23 2014, 09:32
|
Гуру
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095
|
Цитата(ViKo @ Oct 23 2014, 12:19) Для устранения подобного я элементарно синхронизирую папки рабочего компьютера и флэшки в Total Commander, а потом флэшки и домашнего компьютера. А я набираю одну команду в командной строке. И она работет даже если я уже внес новые изменения. Цитата(ViKo @ Oct 23 2014, 12:19) Total Commander, сравнить файлы по содержимому пробовали? А сколько времени вам нужно, чтобы разобраться, какие именно файлы из проекта надо сравнивать (т.е. какие изменялись за это время)? Мне достаточно набрать одну команду или сделать три щелчка мышкой. А сколько вам надо времени, чтобы найти архив, в котором было последнее изменение файла xxx.c? Мне достаточно набрать одну команду или сделать три щелчка мышкой. На этом заканчиваю. Раз вы считаете, что вам это не нужно - значит вам это действительно не нужно. А я освободившее время использую на что-нибудь полезное.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Oct 23 2014, 09:46
|
Универсальный солдатик
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362
|
Цитата(Сергей Борщ @ Oct 23 2014, 12:32) А сколько времени вам нужно, чтобы разобраться, какие именно файлы из проекта надо сравнивать (т.е. какие изменялись за это время)? По номеру версии в имени файла вижу. Набирать вообще не надо, только мышой кнопки нажимать. Мне, особо, и не нужно возвращаться к древним вариантам. Последние - самые лучшие. Одной командой вы не сможете сделать тройное архивирование проекта, как у меня с флэшкой и двумя компами. А то и четверное, если с DropBox. Значит, для хранения используете еще что-то.
|
|
|
|
|
Oct 23 2014, 10:02
|
Ally
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050
|
Цитата(ViKo @ Oct 23 2014, 12:46) По номеру версии в имени файла вижу. Набирать вообще не надо, только мышой кнопки нажимать. Мне, особо, и не нужно возвращаться к древним вариантам. Последние - самые лучшие. Одной командой вы не сможете сделать тройное архивирование проекта, как у меня с флэшкой и двумя компами. А то и четверное, если с DropBox. Значит, для хранения используете еще что-то. Да, подтверждаю, средств Total Commander хватает выше крыши на все операции сравнения и синхронизации. Я бы даже сказал, что Total Commander это лучший из всех SVN-ов А файловая система лучшая из всех структур для хранения данных.
|
|
|
|
|
Oct 23 2014, 10:06
|
Местный
Группа: Свой
Сообщений: 446
Регистрация: 12-03-06
Из: Москва
Пользователь №: 15 142
|
Странный холивар: есть люди, которым удобно и при одиночной работе пользоваться VCS, есть те, которые и без нее обходятся отлично. Если же работа в команде, то правила должны быть едины и пусть человек сам учится, если хочет быть в команде. Лично мне прежде SVN, а теперь и Fossil удобен именно возможностью откатиться на шаг назад, простотой синхронизации между рабочими местами( ну не люблю я ноуты), возможностью веток для странных хотелок заказчика и меток для однозначного поиска старого. Иногда надо посмотреть, что изменилось со времени Х и не поэтому ли полезли новые глюки, особенно при мелкой дороботке старых проектов. Если и так хорошо - зачем заставлять себя или соседа? Я, например, никак не могу понять для себя пользу смартфонов: мне важнее 2..3 недели без подзаряда. А кто-то без них не может и готов по 2 раза в день заряжать. Важно показать возможности и пусть человек сам решает, надо или нет.
|
|
|
|
|
Oct 23 2014, 10:08
|
Странник
Группа: Свой
Сообщений: 766
Регистрация: 29-08-05
Из: Екатеринбург
Пользователь №: 8 051
|
Цитата(ViKo @ Oct 23 2014, 15:25) Можно быстро набирать текст, но сильно ли сказывается это на общей производительности программирования? Это можно отнести к уровню комфорта, как и топиковую тему. Но для каждого влияние этого на "производительность" будет разной, т.к. нет универсального её мерила. Аналогия. Можно сидеть на табуретке с напряжением спины и шеи, а можно в кресле расслабившись. Это скажется на производительности? Обязательно, т.к. в напряжении при высоком темпе долго сложно продержаться, а в кресле - легко и сколько угодно. НЕ Так же и система ведения версий - это инструмент для удобства, комфорта работы, чтобы при необходимости можно было откатиться, посмотреть отличия, восстановить историю хода мысли. Но тут есть тонкий момент, для получения всех этих удобств нужно вести проект с учётом определённых правил, дабы не превращалось хранилище в свалку с ниочёмными комментами.
--------------------
"Как много есть на свете вещей, которые мне не нужны!" Сократ
|
|
|
|
|
Oct 23 2014, 10:17
|
не указал(а) ничего о себе.
Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887
|
Цитата(Andreas1 @ Oct 23 2014, 14:06) Важно показать возможности и пусть человек сам решает, надо или нет. +1. Я могу еще добавить, что у многих упомянутый "порог срабатывания" превышен значительно сильнее, и многим недостаточно уже и ее (VCS). Помимо VCS народ использует и багтрекеры, и системы контроля требований, и т.д. и т.п. Вот лично я, например, вообще почти ничего не программирую, но активно использую CVS для управления документацией (ЕСКД) и файлами проектов печатных плат, ПЛИС и т.д. При этом мне этого не достаточно, и я еще дополнительно связываю все это с системой багтрекинга (это у меня абсолютный минимум). А еще хочется нормальную PDM, а лучше PLM... И требования тоже хочется... И вообще хочется максимум переложить на компьютер, чтобы мозг занимался собственно разработкой (творческой работой), а не рутиными вещами. Это чисто вопрос личного выбора каждого.
|
|
|
|
|
Oct 23 2014, 10:36
|
Ally
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050
|
Цитата(Andreas1 @ Oct 23 2014, 13:06) Странный холивар Странных холиваров не бывает. Если вы тут, значит что-то вас в этом беспокоит. Но вот что? Я так несмело предположу, что некоторые работают под линуксом где нет Total Commander. А некоторые всегда работали и работают с GCC и не в курсе проблем которые вызывает произвольные Version Control System в продвинутых IDE
|
|
|
|
|
Oct 23 2014, 10:49
|
Гуру
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095
|
Цитата(AlexandrY @ Oct 23 2014, 13:36) Я так несмело предположу, что некоторые работают под линуксом где нет Total Commander. Там есть другие плюшки. Цитата(AlexandrY @ Oct 23 2014, 13:36) А некоторые всегда работали и работают с GCC и не в курсе проблем которые вызывает произвольные Version Control System в продвинутых IDE Я бы даже сказал - об этих проблемах не в курсе даже разработчики этих продвинутых IDE, которые практически поголовно добавляют в свои продвинутые IDE поддержку систем контроля версий.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Oct 23 2014, 10:49
|
Гуру
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369
|
Цитата(syoma @ Oct 22 2014, 18:33) Столкнулся с по-видимому непосильной задачей - как объяснить человеку, а точнее даже не одному, оставшимся в прошлом веке, как работает SVN Вроде как программисты, а вроде как и нет. Может есть инструкция доходчивая на русском для тупых или опыт какой? У меня просто мыслей и нервов не хватает. Читаю этот и другие посты и вижу закономерность в ответах. Правда сейчас опять начнут меня "гвоздить" за ссылки на мои же статьи. Так вот, у меня есть статья "Квадрига..." и там написано по "мотивам" статей о зависимости производительности труда от количества работников. И там сказано, что при увеличении числа работников производительность резко падает. Теперь смотрите на переписку, которая ведется здесь. В том случае, когда человек работает сам по себе, без "подельщиков", ему никакие средства повышения производительности труда не нужны. Как только в проекте оказывается 3-5 или более людей начинается неразбериха с версиями файлов. Я это запомнил крепко, т.к. однажды руководитель проекта продержал меня на работе в воскр. до 7 вечера и только после этого он опознал, что файл, который сделал другой разработчик, который в это время сидел дома у телевизора, и этот файл входил в мой проект, и этот файл был старой версии и не работал... А я этого понять не мог, поскольку в чужом файле ничего не понимал, не до того было. Собственно мой ответ в том, что если работаете командой, то необходимо применять средства, защищающие работников от ошибок. И от применения старых версий файлов, которые сделали их сослуживцы. И таким образом, это не желание отдельно взятого человека - "хочу или не хочу"... А это дело всей команды. Либо "Мы все хотим зарабатывать здесь", либо ... И далее ищутся меры защиты от ошибок и повышения производительности труда. А будет ли это софт или выбранный человек - не так важно. Просто софт это сделает надежнее. Так что вот. "Хотите работать в команде или нет"? - вот единственный вопрос, который требует ответа от Ваших " оставшимся в прошлом веке". Ну и от их начальника... После чего надо найти человека, мнению которого можно доверять и он должен сказать, какой именно софт для Вас подойдет...
--------------------
www.iosifk.narod.ru
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|