#git #maven #zsh
Вопрос:
Я хочу удалить всю папку «${project.build.directory}» из отслеживаемых изменений git перед фиксацией. В этой сгенерированной папке сборки находятся десятки, если не сотни файлов git. Как я могу удалить его из отслеживаемых изменений? Когда я пытаюсь сделать
git restore --staged ${project.build.directory}
Я получаю «zsh: плохая замена» и не могу восстановить состояние git папки maven. Я хочу восстановить состояние до того, как я случайно добавил папку сборки в свою отслеживаемую папку, а также добавить каталог сборки проекта в свой .gitignore, чтобы это не повторилось снова
Комментарии:
1.
project.build.directory
не является допустимым именем переменной оболочки. Что заставляет вас думать${project.build.directory}
, что это имеет какое-то значение?2. каталог ${project.build.directory} отображается в списке измененных и отслеживаемых файлов/каталогов при выполнении статуса git и прочего
3. Вы имеете в виду, что это имя файла? У вас есть файл , имя которого буквально
$
, то{
, тоp
и т. Д., Вплоть до финала}
? Это довольно злое имя файла для создания программного обеспечения (возможно, ошибка), но вам просто нужно указать путь, чтобы сообщить zsh, что$
это не директива для zsh , т. Е. Что zsh должен просто передать имя файла Git . Это чисто проблема оболочки: все интерпретаторы командной строки имеют какой-то синтаксис, и zsh используется${...}
для обозначения переменных оболочки (bash и sh используют один и тот же синтаксис), поэтому вы должны сказать оболочке: «не для вас».
Ответ №1:
Стандартный подход заключается в добавлении папки сборки в .gitignore
файл.
zsh
жалуется, что ${project.build.directory}
это не существующая переменная.
Удаление каталога из отслеживаемых изменений производится путем git rm -r --cached <DIRECTORY>
.
Я не уверен, что вы не ошибаетесь, отслеживая и инсценируя. Отслеживаемые средства уже зарегистрированы, а поэтапные средства добавлены, но еще не зарегистрированы. Для постановочных материалов вы можете разобрать их с помощью git reset <PATH>
.
Комментарии:
1. Я НЕ хочу фиксировать каталог сборки. я случайно сделал добавление мерзавца . и добавил папку сборки, и в ней появились сотни файлов…. не знаю, как его восстановить, прежде чем я выполнил эту команду.
2. Я пытался это сделать
git rm -r --cached ${project.build.directory}
, но он жалуется на zsh: плохая замена.3. Откуда берется идентификатор «${project.build.directory}»?
4. это локальный каталог сборки maven
5.
zsh
не знает эту переменную, просто дайте ей реальное имя каталога.