Вопрос №208 от пользователя user-be99f199794716f1 в уроке «Запись изменений в репозиторий. Продвинутая подготовка к коммиту.», курс «Основы Git»

user-be99f199794716f1

что за постоянный шорох, как пенопластом по зубам

6 1

Andrew Kumanyaev

Природа этих помех мне пока не понятна, но я с ними обязательно разберусь.

0

padremortius

Исправьте, пожалуйста, ошибки в следующих местах (пропущена буква "Е"): "который размещатся в директории" "замена мстами делает"

В репозитории строка файла lib/generators/persey/install/install_generator.rb выглядит как "copy_file("config.rb", "config/config.rb")", а в результате должна получится строка с одинарными кавычками и не помеченная к изменению. Думаю, что где-то ошибка

2

Andrew Kumanyaev

Букву е вернул. Спасибо :)

Да, в репозитории исходная строка в файле lib/generators/persey/install/install_generator.rb выглядит так:

copy_file("config.rb", "config/config.rb")

После того, как выполнили скрипт, получается так (выдержка из git diff сразу после запуска упражнения):

       def create_configuration
-        copy_file("config.rb", "config/config.rb")
-        inject_into_file 'config/application.rb', before: "module #{Rails.application.class.parent_name}" do
+        copy_file('config.rb', 'config/config.rb')
+        inject_into_file 'config/application.rb', before: 'module #{Rails.application.class.parent_name}' do
           <<-'RUBY'

Если мы добавим изменения

-        copy_file("config.rb", "config/config.rb")
+        copy_file('config.rb', 'config/config.rb')

в индекс, то при вызове команды git diff эти изменения не отобразятся:

       def create_configuration
         copy_file('config.rb', 'config/config.rb')
-        inject_into_file 'config/application.rb', before: "module #{Rails.application.class.parent_name}" do
+        inject_into_file 'config/application.rb', before: 'module #{Rails.application.class.parent_name}' do
           <<-'RUBY'

так как git diff отображается разницу между индексом и рабочей диреткорией, а индекс уже на этот момент будет содержать эти изменения. Поэтому в формулировке задания тут ошибки нет. Вам необходимо достичь указанного диффа, добавив все остальное в индекс, но при этом не добавить ошибки автозамены (сделать это можно как минимум 4 способами - 3 из них красивые и предпочтительные, 1 в лоб).

0

Andrew Kumanyaev

Кстати, то, что у вас в индексе подготовленно к коммиту можно посмотреть при помощи git diff --cached

0

Andrew Kumanyaev

@Пользователь вы разобрались с заданим? :)

0

padremortius

да, спасибо.

0

Используйте Хекслет по максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Даю согласие на обработку персональных данных, соглашаюсь с «Политикой конфиденциальности» и «Условиями оказания услуг»

Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
18 мая 10 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
18 мая 10 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
18 мая 10 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
18 мая 10 месяцев
Иконка программы Fullstack-разработчик
Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
18 мая 16 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
18 мая 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Создает веб-приложения со скоростью света
18 мая 5 месяцев