git分支冲突问题相关解决办法

  当多人协作本地仓库进行一个项目的开发时,难免出现以下问题:

创建一个分支本地仓库时:

git init         //初始化仓库
git config --global user.name "自己名字"
git config --global user.email "自己邮箱"

git branch "分支名称"     //创建一个分支
git checkout -b "分支名称";   //切换到该分支

此时,当我们从主分支拉取项目时(git push origin master):

There is no tracking information for the current branch.
Please specify which branch you want to merge with.

翻译过来就是没有当前分支的跟踪信息,请指定要与之合并的分支。那么我们就需要将分支与主分支进行关联:

git push origin "分支名称"
git branch --set-upstream-to=origin/"分支名称" "分支名称"

也可以简写为:

git push -u origin/"分支名称"

之后我们想把远程项目拉下来进行合并时,又将出现以下问题:

 * branch            master     -> FETCH_HEAD
fatal: refusing to merge unrelated histories

这表示在没有相关历史的本地库无法下拉,可用:

git pull origin master --allow-unrelated-histories

之后我们合并分支时,则会出现:

error: The following untracked working tree files would be overwritten by merge:
	.DS_Store

此时我们需要删除主git本地库没有管理的文件:

git clean -d -fx "提示文件"

参数解释:

d :删除未被添加到git的路径中的文件(将.gitignore 文件标记的文件全部删除)

f :强制运行

x :删除忽略文件已经对git来说不识别的文件 (新修改的没有被跟踪的文件)

此刻,可以合并分支项:

git merge "分支项"

之后我们根据代码里看到的>>>Head进行修改保留项即可提交

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值