Фатальный: текущий мастер ветвления не имеет восходящей ветки

Я пытаюсь подтолкнуть один из моих проектов к github, и я продолжаю получать эту ошибку:

[email protected]:~/846156 (master) $ git push

fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use

     git push --set-upstream origin master

Итак, я попробовал и получил следующее:

[email protected]:~/846156 (master) $ git push --set-upstream origin master

fatal: Authentication failed

В другой потоке stackoverflow я предложил следующее, с неутешительными результатами.

[email protected]:~/846156 (master) $ git push -u origin master

fatal: Authentication failed

Затем я попробовал это:

[email protected]:~/846156 (master) $ git config remote.origin.push HEAD

[email protected]:~/846156 (master) $ git push

fatal: Authentication failed

Любые подсказки?

Ответ 1

Вы исправили push, но независимо от этой проблемы push (которую я объяснил в git push -u origin master " Почему мне нужно явно выдвигать новую ветвь? ": git push -u origin master или git push -u origin --all), Теперь вам нужно решить проблему аутентификации.

Это зависит от вашего URL (ssh как в [email protected]/yourRepo, или https как в https://github.com/You/YourRepo)

Для https URL:

Если ваша учетная запись защищена двухфакторной аутентификацией, ваш обычный пароль не будет работать (для URL-адреса https), как описано здесь или здесь.

Та же проблема, если ваш пароль содержит специальный символ (как в этом ответе)

Если https не работает (потому что вы не хотите генерировать вторичный ключ, PAT: персональный токен доступа), тогда вы можете переключиться на ssh, как я показал здесь.

Ответ 2

Также вы можете использовать следующую команду:

git push -u origin master

Это создает (-u) другую ветвь в вашем удаленном репо. Как только выполняется аутентификация с помощью ssh.

Ответ 3

По-видимому, вы также получаете это сообщение об ошибке, когда вы забыли параметр --all при первом нажатии. Я написал

git push -u origin

который дал эту ошибку, он должен был

git push -u origin --all

О, как мне нравятся эти ошибки копирования-пасты...

Ответ 5

Пожалуйста, попробуйте этот сценарий

git push -f --set-upstream origin master

Ответ 6

Я сделал простую ошибку, забыв зафиксировать:

git commit -m "first commit"

тогда git push origin master работал.

Ответ 7

Что ж, у меня возникла та же проблема при загрузке, и я решил ее, выполнив то же самое, что он говорит: раньше я пытался протолкнуть терминал в мой репозиторий в Linux через https, например

git push https://github.com/SiddharthChoudhary/ClientServerCloudComputing.git

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

git push --set-upstream https://github.com/SiddharthChoudhary/ClientServerCloudComputing.git master

И это сработало. Таким образом, вам будет предложено ввести имя пользователя и пароль. Я также сгенерировал токен и вместо пароля я вставил токен, и, таким образом, все было сделано успешно.

  1. Для создания токена перейдите в свою учетную запись Github и в "Настройки разработчика", а затем создайте еще один токен.
  2. Получив это, скопируйте этот токен и вставьте в запрос пароля, когда его спросят.

Ответ 8

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

git push

Но вам нужно указать ветку сейчас, даже если у вас есть извлечение ветки, которую вы хотите нажать, поэтому

git push origin <feature_branch>

Где может быть даже master ветка

Ответ 9

У меня такая же проблема

enter image description here

Я решил, что использовал команду ниже

$ git branch --set-upstream develop origin/develop

и он добавит конфиг в файл конфигурации в папке .git.

enter image description here

Ответ 10

Первое использование git pull origin your_branch_name Тогда use git push origin your_branch_name

Ответ 11

Существует простое решение для работы с MacOS Sierra. Я выполнил следующие две команды:

git pull --rebase git_url(Ex: https://github.com/username/reponame.git)
git push origin master

Если он показывает любую фатальную ошибку в отношении восходящего потока после любого последующего нажатия, просто выполните:

git push --set-upstream origin master

Ответ 12

Определяет действие, которое должен выполнить git push, если в командной строке не задан refspec, в удаленном не настроен refspec и ни один из параметров, заданных в командной строке, не подразумевает refspec.

Просто сделай это:

git config --global push.default current

тогда

git push

Ответ 13

1. Компьютер и связанный с ним github. Используйте SSH. Компьютерный код, поэтому вам не нужно отправлять подтвержденные введите здесь описание изображения

2. git не может управлять пустой папкой. Таким образом, вы должны написать такой файл readme.md, сохраненный в файле. В противном случае вы не найдете файл.

3. В вашем локальном проекте ничего нового не происходит. Пожалуйста,

git init

git remote add origin +"githublink"

git add .

git commit -m "" снова.

4., затем git pull origin master (ключ)

5. Наконец git push origin master (разрешить всю проблему).

http://my.oschina.net/psuyun/blog/123005 参考 链接

Ответ 14

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

git push origin master

Помогает мне.

Ответ 15

Я также получил ту же ошибку. Я думаю, что это потому, что я клонирую ее и пытаюсь отодвинуть назад. $ git push -u origin master Это правильная команда. Попробуйте

Подсчет объектов: 8, сделано. Дельта-сжатие с использованием до 2 потоков. Сжатие объектов: 100% (4/4), сделано. Написание объектов: 100% (8/8), 691 байт | 46,00 КиБ/с, готово. Всего 8 (дельта 1), повторно использованный 0 (дельта 0) удаленный: Разрешающие дельты: 100% (1/1), сделано.

  • master [new branch] → master Мастер ветвей, настроенный для отслеживания удаленного мастера веток от источника.

    It was successful. Try to create new u branch 
    

Ответ 16

У меня была такая же проблема, причина была в том что я забыл указать ветку

git push myorigin feature/23082018_my-feature_eb

Ответ 17

Для меня я выдвигал изменения в частное репо, к которому у меня не было доступа для записи. Убедитесь, что у вас есть действительные права доступа при выполнении операций push или pull.

Вы можете напрямую проверить через

Ответ 18

Для меня это произошло потому, что я удалил скрытую папку .git.

Я исправил это путем удаления папки, повторного клонирования и повторного внесения изменений.

Ответ 19

Чтобы устранить эту проблему, при проверке кода от git, вам нужно дать команду, как показано ниже:

git checkout -b branchname origin/branchname

Здесь по умолчанию мы устанавливаем the upstream branch, поэтому вы не столкнетесь с указанной проблемой.

Ответ 20

Для меня проблема происходит от названия моей ветки: "# name-of-my-branch", без "#" все работает нормально!