#github
Вопрос:
Всех , кого я хотел спросить, почему github работает не так, как должно было быть. Когда я клонирую проект, он не показывает все файлы и все коды внутри него.Но когда я делаю «git push», он не показывает никаких ошибок и загружает весь проект.Я использую «ssh» для загрузки.
Когда я открываю проект клонирования, он показывает ViewController красным цветом с множеством пустых мест. В чем может быть проблема? Я впервые столкнулся с этой проблемой.
В конце концов я использовал функцию «git push-u origin main».
Заранее спасибо.
Комментарии:
1. Ваш вопрос немного сбивает с толку — клонирование означает копирование с Github, а нажатие означает копирование на Github, так какой же из них не работает?
2. @IMSoP Я имею в виду,что я продвигаю проект,и когда я клонирую его оттуда, я сталкиваюсь с этой проблемой, клонирование работает для проверки всего правильно, но это показывает, что есть проблема.
3. Вы совершили что-нибудь в свое хранилище перед тем, как нажать? Я имею в виду не редактирование файлов в папке, а использование
git add
иgit commit
сохранение изменений в локальном репозитории.4. @AliSamji Я использовал git add . и git совершает «первое совершение» в начале. После этого я применил «git удаленное переименование исходного пункта назначения».
5. Вы сказали: «клонирование работает для проверки всего правильно, но оно показывает, что есть проблема». Итак, вы получаете сообщение об ошибке? Если да, можете ли вы включить это в свой вопрос.
Ответ №1:
Сначала проверьте, есть ли в проекте, который вы клонируете (с GitHub) .gitmodules
.
Это объясняет, почему некоторые папки (перечисленные в .gitmodules
файле) все еще пусты после клонирования.
Попробуйте снова клонировать свой репозиторий (в новой папке) с помощью:
git clone --recurse-submodules git@github.com/<aUser>/<aRepo>
Другой вариант заключается в том, что в вашем локальном репозитории, который вы переместили, у вас есть вложенные репозитории git: найдите .git/
подпапку в любом месте вашей локальной папки репо (рядом с самой верхней папкой, так как она содержит ожидаемую локальную структуру Git .git/
).
Такие вложенные репозитории не будут добавлены, зафиксированы/перемещены. Будет записана только ссылка на их верхний SHA1, в результате чего GitHub отобразит их папки как пустые, серые с белой стрелкой.
Вам нужно было бы:
- удалите
.git/
локально (в этих вложенных вложенных папках), git rm --cached afolder
(без трейлинга/
: сделайте это для каждой папки, в которой было.git
)- добавьте все,
- зафиксируйте и нажмите еще раз.
Комментарии:
1. как проверить gitmodues внутри проекта?
2. @Аллахверди «проверить»? Посмотрите, есть ли
.gitmodules
файл в вашем основном репозитории: он предоставит вам всю информацию о подмодулях, которые необходимо проверить.3. нет, нет никакого файла .gitmodules. Этого никогда не было в моих проектах.
4. @Аллахверди Вы видите серые папки с белой стрелкой на GitHub? Я отредактировал свой ответ.
5. да,я понимаю, но, как всегда, я думаю, что главная проблема заключается в переименовании источника в пункт назначения.
Ответ №2:
Я загрузил проекты с «git destination», в то время как это должно быть «git origin», и в конце концов мы должны использовать «git push origin master».