"git add" команда возвращает сообщение об ошибке "фатальный: внешний репозиторий" - программирование
Подтвердить что ты не робот

"git add" команда возвращает сообщение об ошибке "фатальный: внешний репозиторий"

Я просто вхожу в чудесный мир git. Я должен представить множество изменений, которые я сделал в своей программе, расположенных в каталоге под названием: /var/www/myapp

Я создал новый каталог "/home/mylogin/gitclone" . Из этого каталога я сделал команду "git clone" против публичного репо, и я смог получить последнюю созданную копию.

Теперь я пытаюсь понять, как взять все файлы в моей рабочей папке (/var/www/myapp) и "проверить их" в основном репозитории.

От /home/mylogin/gitclone, Я пробовал следующую команду:

"git добавить /var/www/myapp " , но я получаю сообщение об ошибке, что папка, которую я пытался добавить, находится вне репозитория.

Можете ли вы дать мне несколько указаний на то, что я делаю неправильно? Кроме того, я хотел бы добавить все, независимо от того, отличается ли он от мастера или нет. Спасибо.

4b9b3361

Ответ 1

Сначала в папке клонирования вы можете создать ветвь (чтобы хозяин оставался нетронутым)

Git Branch [name]

Просто скопируйте нужный файл (в вашей старой папке) в папку клонирования.

Когда вы закончите, просто добавьте/зафиксируйте свое изменение и Объедините свою ветку в ветку "master"

Он будет выглядеть примерно так.

git add .
git commit -m "Comments"
git checkout master
git merge [new_branch]

Попробуйте этот учебник от GitHub

Ответ 2

Вам нужно будет переместить все файлы из /var/www/myapp в/home/mylogin/gitclone, а затем сделать git add ., а затем git commit -m "Your message".

Ответ 3

Это потому, что вы управляете версиями внутри /home/mylogin/gitclone и git отслеживает все внутри этой папки. Вы не можете отслеживать другие папки вне этого репозитория.

Решением может быть создание подмодуля или использование символической ссылки с помощью ln -s

Ответ 4

Чтобы добавить некоторые файлы или папки в ваш репозиторий, они должны быть в папке, созданной с помощью "git clone". Итак, скопируйте/вставьте свое приложение в локальную папку git, а затем зайдите в него и сделайте "git добавить *" , а затем вы сможете зафиксировать на сервере "git commit -m 'message'" и, наконец, нажмите на изменения на сервере с помощью "git push"

Ответ 5

При обновлении до git версии 2.12.2 эта ошибка появилась, я добавил, что я добавляю файл с полным путем, например:

git add c:\develop\project\file.text

когда удаляется полный путь, который он запускает, например:

git add file.text

Ответ 6

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

Что бы вы на самом деле хотели сделать, это сначала git checkout -b myapp, который будет создавать и проверять новую ветку на основе основной ветки клонированного вами репозитория. Затем вы фактически скопируете все свои файлы и скопируете их с помощью git commit -a -m "Short descriptive name about what you did". Параметр -a, который вы передали в git commit, предназначен для включения всех изменений, сделанных в репозиторий, и -m должен включать сообщение фиксации в действительную команду. После этого вы можете либо push вернуться в основной репозиторий, если у вас есть доступ на запись к нему или выталкиваете его в свое собственное публичное репо или вообще не нажимаете на него.

То, что я описал выше, в значительной степени основано на git. Попробуйте прочитать этот book, который довольно описателен.

Ответ 7

Это сообщение также может появляться, когда имя файла указано в файле .gitignore.