git pull origin master --rebase

git pull origin master --rebase

创建分支testing
git branch testing

分支管理
git branch

分支切换
git checkout testing

删除分支
git branch -b testing

合并分支
使用 git merge 命令来合并两个分支,首先切换到 master 分支中,然后使用命令 git merge testing 会弹出类似于提交信息文本,用 vim语法编辑然后退出。

git branch -v  可以查看每一个分支的最后一次提交

git log 查看日志

git reset <comit-id> 回退到指定目录

! [rejected] develop -> develop (non-fast-forward)‌ 的意思是,当你尝试将本地的 develop 分支推送到远程仓库时,由于本地分支和远程分支的提交历史不同步,导致推送被拒绝。具体来说,本地分支的最新提交与远程分支的最新提交之间存在差异,无法通过简单的快进(fast-forward)操作完成合并,因此推送被拒绝。

原因分析

  1. 本地和远程分支不同步‌:本地分支的最新提交与远程分支的最新提交之间存在差异,导致无法通过快进操作完成合并。
  2. 冲突‌:本地和远程分支之间存在冲突,需要手动解决这些冲突后才能进行合并。

解决方案

  1. 使用 git pull 命令同步远程分支‌:
    • 使用 git pull origin develop 命令将远程仓库的最新代码拉取到本地,解决可能的冲突后再进行推送。
    • 如果有冲突,需要手动解决这些冲突后再进行推送。
  2. 强制推送‌:
    • 如果确定要覆盖远程分支的代码,可以使用 git push -f origin develop 进行强制推送。但需要注意,这可能会覆盖掉远程分支的其他人的工作,因此需要谨慎使用。
  3. 使用 --allow-unrelated-histories 选项‌:
    • 如果是第一次提交且本地和远程分支没有关联,可以在 git pull 和 git push 命令中添加 --allow-unrelated-histories 选项来拉取和推送。
posted @ 2023-09-18 10:53  pxuan  阅读(89)  评论(0)    收藏  举报