в Git ошибка: не удалось подтолкнуть некоторые ссылки на
по какой-то причине, я не могу нажать сейчас, в то время как я мог бы сделать это вчера.
Может быть, я перепутал с конфигурациями или что-то в этом роде.
вот что происходит:
когда я использую git push origin master

Как выглядит мой рабочий каталог и удаленный репозиторий:

17 ответов:
если репозиторий GitHub видел новые коммиты, которые были нажаты на него, пока вы работали локально, я бы посоветовал использовать:
git pull --rebase git pushполный синтаксис:
git pull --rebase origin master git push origin masterтаким образом, вы бы переиграть (
--rebaseчасть) ваши локальные коммиты поверх вновь обновляется!--6--> (илиorigin/yourBranch:git pull origin yourBranch).посмотреть более полный пример в Глава 6 потяните с rebase на Git Pocket Book.
я бы рекомендую:
git push -u origin masterэто установит связь отслеживания между вашей локальной главной ветвью и ее восходящей ветвью.
После этого любой будущий толчок для этой ветви можно сделать с помощью простого:git pushв разделе "зачем мне нужно явно нажимать новую ветку?".
так как ОП уже сбросить и переделать его фиксацию на
origin/master:git reset --mixed origin/master git add . git commit -m "This is a new commit for what I originally planned to be amended" git push origin masterнет необходимости
pull --rebase.Примечание:
git reset --mixed origin/masterтакже может быть написаноgit reset origin/masterС--mixedопция по умолчанию при использованииgit reset.
кто-нибудь попробовать:
git push -f origin masterЭто должно решить проблему.
EDIT: на основе комментария @Mehdi ниже мне нужно уточнить кое-что о
—force pushing. Команда git выше работает безопасно только для первой фиксации. Если ранее уже были коммиты, запросы на вытягивание или ветви, это сбрасывает все это и устанавливает его с нуля. Если это так, обратитесь к подробному ответу @VonC для лучшего решения.
Если вы только что использовали
git initи добавили свои файлы сgit add .или что-то подобное и добавили вашу удаленную ветку может быть, что вы просто не совершили (git commit -m 'commit message') что-нибудь локально нажать на пульт... У меня просто была эта ошибка, и это была моя проблема.
У меня была такая же проблема. Я получал эту проблему, потому что я не сделал никакого коммита, даже начального коммита, и все же я пытался нажать.
Как только я сделал
git commit -m "your msg"и тогда все работало нормально.
Я нахожу решение этой проблемы в справке github.
вы можете увидеть его из: работа с ошибками без быстрой перемотки вперед
Он говорит:
вы можете исправить это путем извлечения и объединения изменений, внесенных в удаленной ветви с изменениями, которые вы сделали локально:
$ git fetch origin # Fetches updates made to an online repository $ git merge origin branch # Merges updates made online with your local workили вы можете просто использовать git pull для выполнения обеих команд сразу:
$ git pull origin branch # Grabs online updates and merges them with your local work
Если вы используете gerrit, это может быть вызвано неправильным изменением-id в фиксации. Попробуйте удалить Change-Id и посмотреть, что произойдет.
переименуйте свою ветку, а затем нажмите, например:
git branch -m new-name git push -u new-nameэто сработало для меня.
Не забудьте зафиксировать свои изменения, прежде чем нажимать на репо Github. Это может решить вашу проблему.
Не уверен, что это применимо, но исправление для меня состояло в том, чтобы совершить что-то локально после git init. Затем я перешел к удаленному использованию --set-upstream ...
1) git init
2) git remote add origin https://gitlab.com/crew-chief-systems/bot
3) git remote-v (для проверки текущего репозитория)
4) git add-A (добавить все файлы)
5) git commit-m 'Added my project'
6) git pull --rebase origin master
7) git push origin master
Ну, если ни один из вышеперечисленных ответов не работает, и если вы что-то перепутали с
ssh-addв последнее время. Попробуйssh-add -D
в моем случае эта ошибка произошла из-за того, что в нашей версии GitLab происходило некоторое обслуживание.
вы также можете исправить это, отредактировав файл конфигурации git вашего проекта:
где это?
.git / config
добавьте следующие строки в конце, если это не так.
[branch "master"] remote = origin merge = refs/heads/masterпроблема
ошибка git: не удалось нажать некоторые ссылки также приходит, когда имя локального репозитория совпадает с соответствующим именем удаленного репозитория. Убедитесь, что вы работаете над правильной парой репозиториев, прежде чем извлекать изменения в удаленный репозиторий. Если вы пишете неправильно и хотите удалить локальный репозиторий, выполните следующие действия
удаление локального РЕПО из windows 1. del /F /S /Q / A .мерзавец 2. команда rmdir. мерзавец 3. Исправьте имя локальной папки (XXXX02 - >XXXX20) или если оно это вновь созданный РЕПО удалить его и воссоздать РЕПО (XXXX02 имя РЕПО изменилось на XXXX20). 4. git init 5. Повторное сопоставление с удаленным РЕПО, если оно не сопоставлено. 6. git remote add origin https://github.com/ / XXXX20.git 7. git push - U origin master
Comments