kzen.dev
  • Вопросы
  • Метки
  • Пользователи
Оповещения
Вознаграждения
Регистрация
После регистрации, сможете получать уведомления об ответах и комментариях на Ваши вопросы.
Вход
Если у Вас уже есть аккаунт, войдите чтобы проверить новые уведомления.
Тут будут вознаграждения за добавленные вопросы, ответы и комментарий.
Дополнительно
Источник
Редактировать
 Felixyz
Felixyz
Вопрос

Игнорирование содержимого уже зарегистрированного каталога?

У меня есть git-репозиторий, который используется только для хранения графических и звуковых файлов, используемых в нескольких проектах. Все они находятся в одном каталоге без подкаталогов. Теперь я только что создал сценарий для копирования этих активов из другого, структурированного каталога с несколькими уровнями подкаталогов.

Теперь я хочу, чтобы git отслеживал только (исходную) иерархическую файловую структуру, а (целевой) плоский каталог (со всеми файлами в одной куче) игнорировался.

Я добавил целевой каталог в .gitignore, но git всё равно отслеживает изменения в нём. Я думал, что если я зафиксирую удаление старого файла в целевом каталоге, git перестанет отслеживать новое содержимое (скопированное скриптом), но этого не происходит.

Как заставить git забыть о целевом каталоге?

220 2009-08-25T16:10:26+00:00 5
Программирование
version-control
git
Решение / Ответ
Gordon Wilson
Gordon Wilson
25-го августа 2009 в 6:24
2009-08-25T18:24:57+00:00
Дополнительно
Источник
Редактировать
#9407856

Эта команда заставит git отследить ваш каталог и все файлы под ним, не удаляя их:

git rm -r --cached <ваш каталог>.

Опция -r приводит к удалению всех файлов под вашей директорией.

Опция --cached приводит к удалению файлов только из индекса git'а, а не из вашей рабочей копии. По умолчанию git rm <file> удалит <file>.

Gordon Wilson
Gordon Wilson
Редактировал ответ 25-го августа 2009 в 6:50
516
0
 jone
jone
8-го октября 2012 в 5:05
2012-10-08T17:05:50+00:00
Дополнительно
Источник
Редактировать
#9407858

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

git update-index --assume-unchanged path/to/file.txt

После этого любые изменения в этот файл не будет отображаться в статус ГИТ.

75
0
 Stef
Stef
25-го августа 2009 в 6:18
2009-08-25T18:18:40+00:00
Дополнительно
Источник
Редактировать
#9407855

Для подкаталога blah/, добавленного в git, оба следующих варианта, похоже, работают, чтобы игнорировать новые файлы в blah/. Добавлено в .gitignore:

blah 
blah/*
3
0
 Steve
Steve
9-го октября 2018 в 9:06
2018-10-09T21:06:57+00:00
Дополнительно
Источник
Редактировать
#9407859

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

  1. Я добавил *автоматически* к корню .файл гитюдного
  2. Я отправил файлы, которые я хочу сохранить как GeneratedFile.Что угодно.внешн.CheckedIn
  3. Я сделал крюк Git на пост кассе, чтобы вызвать скрипт PowerShell этим:

реж *.CheckedIn -рекурсия | %{ копия $_.Полное имя " и$($_.Полное имя) и".Заменить (на"CheckedIn" и" Ну и") -ЕА результат}

Я чувствую себя немного плохо о себе... но это на самом деле работает.

0
0
 Felixyz
Felixyz
25-го августа 2009 в 6:33
2009-08-25T18:33:43+00:00
Дополнительно
Источник
Редактировать
#9407857

Итак, похоже, что сначала нужно выполнить регистрацию с полностью пустым каталогом (ни старых, ни новых файлов), и все добавленные после этого файлы будут проигнорированы. Если вы удалите старые файлы и добавите новые перед фиксацией, новые файлы будут добавлены в репозиторий, хотя они должны быть проигнорированы.

По крайней мере, это сработало для меня в данной ситуации. Было бы здорово, если бы кто-нибудь смог дать более подробную информацию о том, что происходит.

-2
0
Похожие сообщества 5
ru_gitlab
ru_gitlab
3 207 пользователей
Русскоговорящая группа по GitLab Правила: http://telegra.ph/Pravila-ru-gitlab-02-15 Работа по Gitlab: @ru_gl_jobs Дружественные группы: @ru_devops, @metrics_ru, @pro_ansible, @ru_jenkins
Открыть telegram
Git
Git
2 224 пользователей
Обсуждаем git, его фичи, хаки, надстройки и экосистему. Правила: https://rudevs.network/rules https://git.wtf/
Открыть telegram
pro.git::next
pro.git::next
605 пользователей
Обсуждение системы контроля версий git и инструментов для работы с ней.
Открыть telegram
GitHub Планета
GitHub Планета
246 пользователей
Наши встречи будут проходить каждый третий вторник каждого месяца в 19:00 по Москве. Митап страница https://www.meetup.com/ru-RU/github-planeta
Открыть telegram
ru_gl_jobs
ru_gl_jobs
81 пользователей
Даём и принимаем заказы на работы по GitLab и CI/CD на его основе
Открыть telegram
Добавить вопрос
Категории
Все
Технологий
Культура / Отдых
Жизнь / Искусство
Наука
Профессии
Бизнес
Пользователи
Все
Новые
Популярные
1
Ilya Smirnov
Зарегистрирован 5 дней назад
2
Денис Васьков
Зарегистрирован 1 неделю назад
3
Dima Patrushev
Зарегистрирован 1 неделю назад
4
sirojidddin otaboyev
Зарегистрирован 2 недели назад
5
Елена Гайдамамакинат
Зарегистрирован 2 недели назад
ID
JA
KO
RO
RU
© kzen.dev 2023
Источник
stackoverflow.com
под лицензией cc by-sa 3.0 с атрибуцией