Уже есть несколько отличных ответов, но моя ситуация была утомительной. Я отредактировал исходный код установленного программного обеспечения PLM (управление жизненным циклом продукта) на Win10 и впоследствии решил: «Я, вероятно, должен был сделать это git-репо».
Таким образом, опция кэширования не будет работать для меня напрямую. Публикация сообщений для тех, кто мог добавить контроль исходного кода ПОСЛЕ выполнения первоначальной работы И .gitignore
не работает НО, возможно, вы боитесь потерять кучу работы, что git rm --cached
не для вас.
! ВАЖНО: Это действительно потому, что я слишком поздно добавил git в «проект», который слишком велик и, похоже, игнорирует мой .gitignore. У меня НЕТ коммитов, никогда. Я могу сойти с рук с этим :)
Сначала я только что сделал:
rm -rf .git
rm -rf .gitignore
Затем мне нужно было представить картину моих изменений. Опять же, это установочный продукт, в который я внес изменения. Слишком поздно для первого коммита чистой ветки master. Итак, мне нужен список того, что я изменил, так как я установил программу, добавив > changed.log
к одному из следующих:
PowerShell
# Get files modified since date.
Get-ChildItem -Path path\to\installed\software\ -Recurse -File | Where-Object -FilterScript {($_.LastWriteTime -gt '2020-02-25')} | Select-Object FullName
удар
# Get files modified in the last 10 days...
find ./ -type f -mtime -10
Теперь у меня есть список того, что я изменил за последние десять дней (давайте не будем здесь вдаваться в лучшие практики, кроме как сказать, да, я сделал это для себя).
Для начала, теперь:
git init .
# Create and edit .gitignore
Мне пришлось сравнить мой измененный список с моим растущим .gitignore, работающим по git status
мере того, как я его улучшал, но мои изменения в .gitignore читаются на ходу.
Наконец, у меня есть список желаемых изменений! В моем случае это шаблон - некоторые темы работают вместе с несколькими xml-конфигурациями, специфичными для запуска системы dev с этим программным обеспечением, которую я хочу поместить в репозиторий, чтобы другие разработчики могли его получить и внести свой вклад ... Это будет наша основная ветка, так что совершать, толкать и, наконец, ФИЛИАЛ для новой работы!
.gitignore
файл используетANSI
илиUTF-8
кодировку. Если он использует что-то ещеUnicode BOM
, возможно, Git не может прочитать файл.