git 解决分支冲突 pycharm git相关操作

使用git解决分支冲突

我们在开发过程中经常遇到需要解决分支冲突的情况
下面以命令形式和pycharm形式来讲解两种不同操作
1.命令形式

  1. 首先我们来构造冲突 把下载下来的同一个项目代码放到两个不同的文件夹里面,然后修改代码,
    以这个为例openapi-virt-test 一个放到了~/yhb下 另外一个放到了~/yhb/rpc
    这里写图片描述
    这里写图片描述
  2. 修改项目1代码 以下代码是修改rpc_create_instance_api.py文件 增加'test1'key
    以下是通过pycharm选中修改的文件—右键—--git—–compare with the same repository version 表示可以展示此文件与修改之前的变化
    这里写图片描述
  3. 添加修改 提交修改 上传代码
# 命令实现
 git add rpc_create_instance_api.py
 git commit -m 'add test1'
 git push origin rpc 

这里写图片描述
4. 去项目2修改代码构造冲突rpc_create_instance_api.py文件 增加'test2'key
这里写图片描述
5.把项目2修改代码 提交 push

# 命令实现
 git add rpc_create_instance_api.py
 git commit -m 'add test1'
 # 这里push会出错
 git push origin rpc 

这里写图片描述
6.这里就是有分支冲突

# 命令实现 更新下来代码
 git fetch origin rpc
# 合并代码(版本线是一条)
 git rebase origin/rpc 

这里写图片描述

然后会提示修改冲突
这里写图片描述
解决冲突
这里写图片描述
然后

# 修改冲突以后
git add rpc_create_instance_api.py
git status
git rebase --continue 
git push

# 强制更新为远程分支 放弃本地修改
git fetch --all
git reset --hard origin/master

这里写图片描述

2.pycharm形式
1. 修改项目1代码 以下代码是修改rpc_create_instance_api.py文件 增加'test1'key
以下是通过pycharm选中修改的文件—右键—--git—–compare with the same repository version 表示可以展示此文件与修改之前的变化
这里写图片描述
2.添加修改 提交修改 上传代码 pycharm 一键即可上传代码

选中文件-----右键-------git-----commit file-----commit and push

这里写图片描述

commit 是单纯在本地提交 create patch 是创建一个更新的文件 commit and push 提交并上传代码 
  1. 去项目2修改代码构造冲突rpc_create_instance_api.py文件 增加'test2'key
    这里写图片描述

    选中文件-----右键-------git-----commit file-----commit and push

    这里写图片描述
    4.异常处理
    这里写图片描述
    可以选择rebase 因为merge是合并 而rebase的版本是一条直线
    5.修改冲突
    accept yours 是相当于 用自己的 accept theirs 用别人的一般 可以双击一下左侧文件即可可以根据需要修改
    这里写图片描述
    accept left 用左边的 accept 用右边的 中间的是最后的结果
    这里写图片描述
    修改好了 apply
    然后选择上面工具栏的vcs —git —push 即可 push
    这里写图片描述
  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值