Git Bug记录 —— 拉取或推送,出现分支冲突

拉取或推送时报错如下:
git pull --tags origin master
branch master -> FETCH_HEAD
ac03df346… 73ce6daae master -> origin/master
hint: You have divergent branches and need to specify how to reconcile them.
hint: You can do so by running one of the following commands sometime before
hint: your next pull:
hint:
hint: git config pull. rebase false # merge
hint: git config pull. rebase true # rebase
hint: git config pull. ff only # fast-forward only
hint:
hint: You can replace “git config” with “git config --global” to set a default
hint: preference for all repositories. You can also pass --rebase, --no-rebase,
hint: or --ff-only on the command line to override the configured default per
hint: invocation.
fatal: Need to specify how to reconcile divergent branches.


解决办法:
这个错误信息的意思是 Git 在运行 git pull --tags origin master 命令时发现本地分支和远程分支存在分叉(divergent branches),也就是它们的提交历史不同步,因此需要指定一种方式来解决这个分叉。
常见的处理分叉的方式包括合并(merge)和重建基础(rebase)。但是,由于 Git 不知道你希望使用哪种方法来处理这个分叉,因此会提示你需要指定一种方式来解决这个问题。

  1. 如果你想使用合并的方式来处理这个分叉,可以在命令行中执行 git config pull.rebase false,命令中的 false 意味着 git pull 命令将使用合并(merge)方式。

  2. 如果你想使用重建基础的方式来处理这个分叉,可以在命令行中执行 git config pull.rebase true,命令中的 true 意味着 git pull 命令将使用重建基础(rebase)方式。

  3. 还可以在命令行上直接指定 --rebase 或 --no-rebase 以及 --ff-only 参数,以覆盖已经配置的默认设置。

    需要注意的是,在处理分叉时,一定要小心操作,并先备份代码库,以避免数据丢失。

你可能感兴趣的:(Git,git,bug,github)