2023-10-21 06:29PM
本地有代码没有提交,就直接拉取远程的代码,而不能再重新push/pull代码
使用 git pull origin main:main 就被拒绝:
$ git pull origin main:main
Username for 'https://github.com': xxxxx
Password for 'https://xxxxx@github.com':
From https://github.com/sg552/baogongpingtai-pc
! [rejected] main -> main (non-fast-forward)
使用 git push origin main:main 就报错:
$ git push origin main:main
Username for 'https://github.com': 347430
Password for 'https://347430@github.com':
To https://github.com/sg552/baogongpingtai-pc.git
! [rejected] main -> main (non-fast-forward)
error: failed to push some refs to 'https://github.com/sg552/baogongpingtai-pc.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
解决方法:
1. 使用 git fetch
命令从远程仓库获取最新的更改:
$ git fetch origin
Username for 'https://github.com': xxxxx
Password for 'https://xxxx@github.com':
2. 切换到想要更新的分支:(如果失败,可以直接跳过这个命令)
$ git checkout main
error: pathspec 'main:main' did not match any file(s) known to git
3. 将获取到的更改合并到你的本地分支:
# 如果存在冲突,需要手动解决它们
$ git merge origin/main
Merge made by the 'ort' strategy.
app/controllers/managers/sessions_controller.rb | 2 +-
app/views/managers/sessions/new.html.erb | 4 ++--
config/locales/zh-CN.yml | 5 -----
3 files changed, 3 insertions(+), 8 deletions(-)
4. 最后,将合并后的更改推送到远程仓库:
$ git push origin main:main
Username for 'https://github.com': xxxxx
Password for 'https://xxxxx@github.com':
Enumerating objects: 12, done.
Counting objects: 100% (10/10), done.
Delta compression using up to 4 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 31.86 KiB | 7.96 MiB/s, done.
Total 6 (delta 3), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (3/3), completed with 3 local objects.
To https://github.com/sg552/baogongpingtai-pc.git
d658ab9..8912f21 main -> main
然后就可以正常 push/pull 了
登录
请登录后再发表评论。
评论列表:
目前还没有人发表评论