#git #github
Прошу подсказать. Заливал проект Asp.Net MVC через Git Bash на GitHub. Но ключевая папка проекта почему-то копируется без файлов, т.е. пустая папка. Остальные файлы проекта, включая другую папку копируются нормально. Скрин прилагаю. Также прилагаю скрин, что папка DataProject не хочет индексироваться, точней файлы внутри неё - В чем проблема? Я писал все как в инструкции: git add . git commit -a"name" git push Также пробовал заходить отдельно в папку DataProject и там прописывать git add .; git commit , выходил на уровень выше проверял статус и красное пропадало.....но файлы по-прежнему на ГитХаб не загружались. Поодскажите, пож-т.
Ответы
Ответ 1
В чём причина такого поведения Вот эта строка: modified: DataProject (modified content) Указывает на то, что папка DataProject — это ещё один репозиторий внутри основного репозитория. Это называется субмодуль (submodule). Гитхаб показывает субмодули специальной серой иконкой: Субмодуль — это полностью самостоятельный репозиторий. У него свои данные, свои коммиты, своя история. Внешний, «родительский» репозиторий не может сохранять изменения файлов внутри субмодуля. Он знает (сохраняет в своих коммитах) только следующее: В каком пути лежит субмодуль (например, корень проекта/DataProject). На какой коммит субмодуля нужно смотреть. Похоже, что у вас такая структура: ~/Downloads/DataProject # это ваш проект | → ~/Downloads/DataProject/DataProject # а это субмодуль внутри него → ~/Downloads/DataProject/packages # просто папка Скорее всего субмодуль здесь не нужен, и вы его добавили по ошибке. Обратите внимание: папка packages не должна сохраняться в репозитории — добавьте её в gitignore. (Спасибо Pavel Mayorov за наблюдательность) Как починить репозиторий Правильный путь — удалить субмодуль Инструкция здесь: Как удалить субмодуль? Простой путь — начать заново Если вы только начали работу над проектом, можно удалить историю Git и создать новый репозиторий. Все ваши файлы останутся на месте. Если беспокоитесь — сделайте бэкап в новую папку или архив. Удалите старый репозиторий: cd ~/Downloads/DataProject # Удаляем репозиторий rm -rf .git # И файл с конфигурацией субмодуля. rm -f DataProject/.git # И список субмодулей rm -f .gitmodules Теперь заново инициализируем репозиторий. Убедитесь, что вы находитесь в той же папке! git init Добавьте файл .gitignore для VS в корень проекта. Теперь лишние файлы не будут сохраняться в Git. Сохраните .gitignore в коммит: git add .gitignore git commit -m'add gitignore' Добавьте оставшиеся файлы. git add . git commit -m'message' Теперь снова настройте удалённый репозиторий и перепишите его новой историей. git remote add <адрес удалённого репозитория на гитхабе> git push -uf origin master:Ответ 2
Попробуйте принудительно добавить файлы в индексируемую область, например: git update-index --no-assume-unchanged DataProject Еще посмотрите, что у вас в гитигноре, возможно, там и прописана эта папка.
Комментариев нет:
Отправить комментарий