zHz00 Untitled

воскресенье, 13 октября 2024
06:06 Делать хорошо надо сразу
Пет-проектов у меня немного. Тем не менее, кое-что есть. И вот какой эффект я у себя заметил.

Как известно, одно из ключевых средств при разработке ПО -- это система контроля версий. Обычно -- гит. Новый проект лучше сразу начинать в репозитории. Тем не менее, я этого не делаю. Какое-то время файлы проекта болтаются без надзора. А почему?

Потому что я знаю, что когда я залью на гитхаб, там будет видна вся история коммитов, даже которые я делал ещё локально. Ну и я не хочу, чтобы видели говнокод. Он там всё равно будет, но хотя бы получше. Я сейчас сначала поэкспериментирую, потом приведу код в минимально удовлетворительное состояние, а потом сделаю первый коммит.

Полагаю, что это порочная практика. Говнокод надо не писать вообще, тогда и коммитить можно будет сразу. А работать без системы контроля версий опасно, хотя конечно в зарождающемся проекте об'ём кода такой маленький, что всё легко не только сломать, но и починить.

Но... непонятно, где тогда экспериментировать с новыми средствами. Делать отдельный репозиторий для экспериментов и никому не показывать?

@темы: Программирование

URL
Вот этим проникся :) http://wzor.net/page/crazy_web/200...
Один раз пережив боль, неважно эмоциональную или физическ...
Пьяные, пряные, праздничные дети. Сколько нам еще осталос...
"Тридцать спиц сходятся в ступице, но как раз промеж...
Неплохой баннерок для рекламы мироздания в целом.
Буддийский способ отпущения грехов методом вращения бараб...

13.10.2024 в 07:05

13.10.2024 в 07:05
Заведи другой аккаунт и храни в нём. Когда проект дойдет до кондиции, мигрируй его в постоянный аккаунт.
URL

13.10.2024 в 08:40

13.10.2024 в 08:40
Можно создать локальный репозиторий, вдоволь поэкспериментировать, потом сквошнуть все коммиты в один (git rebase --root --interactive и все "pick", кроме последнего, заменить на "squash") — и уже эту историю из одного коммита публиковать на ГитХаб.

Учти, что при сквоше у тебя получится коммит с Author Date самого первого коммита в истории, т.е. все увидят, когда ты начал проект. Наверняка это можно обойти; как минимум, можно сделать git commit --allow-empty, потом с помощью того же интерактивного ребейза переставить коммиты местами и сквошнуть ещё раз.

-- Minoru
URL

13.10.2024 в 12:25

13.10.2024 в 12:25
А у меня жопа горит от таких стесняшек, боящихся опубликовать говнокод. Потому что пилят там чота втихую, тратят кучу времени на полировку кода... А потом оказывается что надо всё переделать, потому что есть неучтённые нюансы.

Если работаете в команде, то не надо так. Чем раньше получишь фидбек - тем лучше.

Это не только к коду относится, кстати, но и к написанию документации. Да и к другим областям применимо.
URL

13.10.2024 в 13:26

13.10.2024 в 13:26
Foul thing, интересная мысль.
Гость, Minoru, да, squash должен помочь. Я ведь знал про эту штуку, но никогда ей не пользовался. Спасибо!
Xersareeth, йопт, т.е. это целая категория таких лиц. Понял, в команде так не делаю.
URL

13.10.2024 в 14:47

13.10.2024 в 14:47
никто не отменял дополнительные ветки. пили в бранче, коммить-пуши сколько влезет (или не пуши, а оставляй всё локально), а потом, как что-то вырисуется, то можно сделать
- или просто merge этого в мастер и тогда все увидят коммиты, но будет видно, что это пилилось в сторонке.
- или `merge --squash`, тогда в мастере будет только один коммит.
- или `rebase --interactive` этого всего на master и перепилить историю коммитов как больше нравится. и уже потом запушить по красоте.
URL

13.10.2024 в 14:50

13.10.2024 в 14:50
фигачить всё в мастер, пушить на сервер и потом делать rebase этого мастера и потом перезаливать сервер через `push --force`  - это тяжкий грех при работе в команде, так что все приколы с переписыванием делаются исключительно локально.
URL
Добавить комментарий

Расширенная форма

Подписаться на новые комментарии
Получать уведомления о новых комментариях на E-mail