Почему Github загружает все файлы проекта в папку(для пользователей MAC)

#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».