Я слышал в нескольких местах «Не делать больших коммитов», но я никогда не понимал, что такое «большой коммит». Это большой размер, если вы работаете с кучей файлов, даже если они связаны между собой? Над какими частями проекта вы должны работать одновременно?
Для меня, мне трудно пытаться делать «маленькие коммиты», так как я забываю или создаю что-то, что создает что-то еще, что создает что-то еще. Затем вы получите такие вещи:
Сделана настраиваемая исходящая очередь Bot -Новое поле msgQueue, которое является не чем иным, как SingleThreadExecutor -sendMsg блокирует до отправки сообщения и добавляет ожидание между получением сообщений послал -adminExist вызовы обновлены (см. контроллер) -Удаленные звонки, чтобы отправить сообщение контроллер -Новое поле msgWait обозначает время ожидания между сообщениями. Запуск сервисных плагинов перенесен в reloadPlugins -adminExists перенесены с сервера из-за глобальных администраторов. Проверяет на канале, сервер и глобальный уровень Администратор -Новые методы getServer и getChannel, которые получают соответствующий объект Admin принадлежит BotEvent -toString () также показывает extra и extra1 канал поле переименовано в name -Исправлена опечатка в канале (int) сервер Перемещенный adminExists для контроллера PluginExecutor -Минор тестирование добавлено, будет удалено позже JS плагины -Обновлен к изменениям структуры -Замененный InstanceTracker.getController () с Controller.instance -VLC поговорим сейчас в собственном файле Различные обновления и изменения проекта NB --- Затронутые файлы Изменить /trunk/Quackbot-Core/dist/Quackbot-Core.jar Изменить /trunk/Quackbot-Core/dist/README.TXT Изменить /trunk/Quackbot-Core/nbproject/private/private.properties Изменить /trunk/Quackbot-Core/nbproject/private/private.xml Изменить /trunk/Quackbot-Core/src/Quackbot/Bot.java Изменить /trunk/Quackbot-Core/src/Quackbot/Controller.java Изменить /trunk/Quackbot-Core/src/Quackbot/PluginExecutor.java Изменить /trunk/Quackbot-Core/src/Quackbot/info/Admin.java Изменить /trunk/Quackbot-Core/src/Quackbot/info/BotEvent.java Изменить /trunk/Quackbot-Core/src/Quackbot/info/Channel.java Изменить /trunk/Quackbot-Core/src/Quackbot/info/Server.java Изменить /trunk/Quackbot-GUI/dist/Quackbot-GUI.jar Изменить /trunk/Quackbot-GUI/dist/README.TXT Изменить /trunk/Quackbot-GUI/dist/lib/Quackbot-Core.jar Изменить /trunk/Quackbot-GUI/nbproject/private/private.properties Изменить /trunk/Quackbot-GUI/nbproject/private/private.xml Изменить /trunk/Quackbot-GUI/src/Quackbot/GUI.java Изменить /trunk/Quackbot-GUI/src/Quackbot/log/ControlAppender.java Удалить /trunk/Quackbot-GUI/src/Quackbot/log/WriteOutput.java Изменить /trunk/Quackbot-Impl/dist/Quackbot-Impl.jar Изменить /trunk/Quackbot-Impl/dist/README.TXT Изменить /trunk/Quackbot-Impl/dist/lib/Quackbot-Core.jar Изменить /trunk/Quackbot-Impl/dist/lib/Quackbot-GUI.jar Изменить /trunk/Quackbot-Impl/dist/lib/Quackbot-Plugins.jar Изменить /trunk/Quackbot-Impl/lib/javarebel.stats Добавить /trunk/Quackbot-Impl/lib/jrebel.info Изменить /trunk/Quackbot-Impl/nbproject/private/private.properties Изменить /trunk/Quackbot-Impl/nbproject/private/private.xml Изменить /trunk/Quackbot-Impl/nbproject/project.properties Изменить /trunk/Quackbot-Impl/plugins/CMDs/Admin/reload.js Добавить / trunk / Quackbot-Impl / плагины / CMDs / оператор / hostBan Изменить /trunk/Quackbot-Impl/plugins/CMDs/Operator/mute.js Изменить /trunk/Quackbot-Impl/plugins/CMDs/lyokofreak/curPlaying.js Изменить /trunk/Quackbot-Impl/plugins/CMDs/lyokofreak/lfautomode.js Изменить /trunk/Quackbot-Impl/plugins/listeners/onJoin.js Изменить /trunk/Quackbot-Impl/plugins/listeners/onQuit.js Изменить /trunk/Quackbot-Impl/plugins/testCase.js Добавить /trunk/Quackbot-Impl/plugins/utils/whatsPlaying.js Изменить /trunk/Quackbot-Impl/src/Quackbot/impl/SandBox.java Добавить / trunk / Quackbot-Impl / vlc_http Добавить /trunk/Quackbot-Impl/vlc_http/current.html Изменить /trunk/Quackbot-Plugins/dist/Quackbot-Plugins.jar Изменить /trunk/Quackbot-Plugins/dist/README.TXT Изменить /trunk/Quackbot-Plugins/dist/lib/Quackbot-Core.jar Изменить /trunk/Quackbot-Plugins/nbproject/private/private.properties Изменить /trunk/Quackbot-Plugins/nbproject/private/private.xml Изменить /trunk/Quackbot-Plugins/src/Quackbot/plugins/JSPlugin.java Добавить / trunk / Quackbot-Plugins / vlc_http Добавить /trunk/global-lib/jrebel.jar
Да ....
Итак, по вопросам:
- Каковы некоторые факторы, когда коммит становится слишком большим ( неочевидные вещи )?
- Как вы можете предотвратить такие коммиты? Пожалуйста, дайте конкретику
- А как насчет того, когда вы находитесь в полуранних стадиях развития, когда дела идут быстро? Огромные коммиты все еще в порядке?