Можно отменить git add
перед фиксацией с
git reset
, который удалит ее из текущего индекса ("собирающийся фиксироваться" список), не изменяя ничто больше.
можно использовать
git reset
без любого имени файла для неподготавливания всех должных изменений. Это может пригодиться, когда существует слишком много файлов, которые будут перечислены один за другим за разумное количество времени.
В старых версиях Мерзавца, вышеупомянутые команды эквивалентны git reset HEAD
и git reset HEAD
соответственно и перестанут работать, если HEAD
не определено (потому что Вы еще не сделали фиксаций в своем repo), или неоднозначный (потому что Вы создали ответвление, названное HEAD
, который является глупой вещью, которую Вы не должны делать). Это было изменено в Мерзавце 1.8.2 , тем не менее, так в современных версиях Мерзавца, можно использовать команды выше даже до создания первой фиксации:
"мерзавец сбросил" (без опций или параметров) привыкший к ошибке, когда у Вас нет фиксаций в Вашей истории, но это теперь дает Вам пустой индекс (для соответствия несуществующей фиксации, Вы даже не включены).
Бывают случаи, когда вы не можете полагаться на флажки, имеющие идентификаторы или метки, или где текст метки изменяется. В этом случае вы можете использовать метод have_selector
из webrat.
Из моего рабочего кода (где у меня нет идентификаторов на флажках).
response_body.should have_selector 'input[type=radio][checked=checked][value=information]'
Объяснение: тест вернет истину, если тело документа содержит переключатель ( input [type = radio]
), который проверяется и имеет значение «информация»
Вы можете использовать встроенный сопоставитель флажки в Web_steps.rb:
And the "Bacon" checkbox should be checked
Однако вам нужно будет иметь метку на вашем флажке, соответствующем идентификатору соответствующего поля ввода флажков. Отказ Помощник F.Label в Rails принимает строку для использования в качестве идентификатора в первом аргументе. Возможно, вам придется построить строку, которая включает в себя имя поля и имя флажба:
f.label "lunch_#{food_name}, food_name
f.radio_button :lunch, food_name
в любом случае, используйте эту директиву, чтобы увидеть, что у вас есть HTML Repart:
Then show me the page
And the "Obvious choice" checkbox should be checked
Хотя это может быть переключатель, но код будет работать. Это просто проверка полей, помеченных этим текстом.