Я хочу полностью удалить папку "${project.build.directory}" из изменений, отслеживаемых git, перед фиксацией. В этой сгенерированной папке сборки есть десятки, если не сотня файлов git. Как я могу удалить его из отслеживаемых изменений? Когда я пытаюсь сделать
git restore --staged ${project.build.directory}
Я получаю "zsh: неверная замена" и не могу восстановить состояние git папки maven. Я хочу восстановить состояние до того, как я случайно добавил папку сборки в мою отслеживаемую папку, а также добавить каталог сборки проекта в свой .gitignore, чтобы это не повторилось
project.build.directory
не является допустимым именем переменной оболочки. Что заставляет вас думать, что${project.build.directory}
имеет какое-то значение?${project.build.directory} отображается в списке измененных и отслеживаемых файлов/каталогов при выполнении статуса git и т.д.
Вы имеете в виду, что это имя файла? У вас есть файл с именем буквально
$
, затем{
, затемp
и т. д. до финального}
? Это довольно вредное имя файла для программного обеспечения (вероятно, ошибка), но вам просто нужно указать путь в кавычках, чтобы сообщить zsh, что$
не является директивой для zsh, т. е. что zsh должен просто передайте имя файла в Git. Это чисто проблема с оболочкой: все интерпретаторы командной строки имеют какой-то синтаксис, а zsh использует${...}
для обозначения переменных оболочки (bash и sh используют один и тот же синтаксис), поэтому вы должны сказать оболочке: «не для вас» .