Обычно, когда я программирую, передо мной стоит ясная задача, но я нахожу надоедливые вещи, которые мне хотелось бы убрать по ходу дела.
Здесь я вижу три варианта:
- Сделайте это позже (возможно, забыл / придется тратить время на добавление билета)
- Сделайте это сейчас и передайте это вместе с моей текущей работой (неясно)
- Сделайте это сейчас и зафиксируйте отдельно (придется его найти, может ошибиться и непреднамеренно перейти к варианту №2)
Вероятно, это довольно просто, но как можно обойти это, используя svn / git / other?
version-control
git
svn
workflows
Nattfrosten
источник
источник
rebase
вместоmerge
.Ответы:
Лично я думаю, что это зависит :-).
Для небольших исправлений лучше всего использовать третий вариант (теперь в отдельном коммите), потому что затраты на его последующее выполнение не стоят того. В этом случае вы просто создаете отдельный коммит. Как это сделать, зависит от того, какую VCS вы используете, и это отдельный вопрос :-).
Если это больше , вы создаете заявку. В противном случае вы рискуете быть постоянно сорванными с вашей основной задачи («О, смотри, еще одна возможность для рефакторинга, о, есть еще одна, и там, и там ...»).
источник
Учти это. Когда вы «находите раздражающие вещи (...) для очистки» и принимаете исполнительное решение для этого, вы исключаете остальную часть вашей команды из обсуждения приоритетов и принятия решений. Вы позволяете своей повестке дня превосходить всех остальных из-за ваших привилегированных отношений с кодом. Я не думаю, что это хорошо. По опыту это также приводит к обиде команды / акционера.
Вместо этого создайте проблему / задачу для очистки / рефакторинга. Хотя это свежо в вашем уме, перечислите причины, по которым это важно: оценки повышенной стабильности, простоты обслуживания и тому подобное. Может включать оценку усилий в зависимости от того, как работает ваша команда. Затем на следующей встрече по выбору / назначению / приоритетам представьте вашу задачу по рефакторингу и сопоставьте ее с другими задачами. Как команда, решите, когда это должно быть завершено.
Пожалуйста, не думайте, что я говорю вам, чтобы вы отбрасывали здравый смысл во имя принципов. Используй голову. Если в функции, которую вы редактируете, есть что-то уродливое, это не новая задача рефакторинга. Исправьте это и проверьте все. Если переименование свойства, с которым вы работаете, на что-то более разумное, влияет на пару дополнительных исходных файлов, это не новая задача рефакторинга. Исправьте это и проверьте все. Если, с другой стороны, вам не нравится, как другой разработчик (Митч, я ненавижу этого парня) сделал что-то в функции, которую вы не редактируете, и сказал, что функция работает нормально, оставь это пока Создайте задачу по рефакторингу и представьте ваше дело вашей команде.
Если ваша команда всегда отдает предпочтение новым функциям за рефакторинг, начните искать другую работу. Найти работу легче, когда она у вас уже есть.
источник