代码托管 CodeArts Repo
代码托管 CodeArts Repo
- 最新动态
- 功能总览
- 服务公告
- 产品介绍
- 快速入门
- 用户指南
- 最佳实践
-
API参考
- 使用前必读
- API概览
- 如何调用API
-
API
- SSH Key
-
Repository
- 获取分支目录下的文件
- 获取仓库统计数据
- 获取一个仓库下特定分支的图片文件
- 修改被流水线引用的仓库状态
- 判断用户是否有仓库的管理员权限
- 设置仓库是公开状态还是私有状态
- 获取一个仓库下特定分支指定文件内容
- 获取公开示例模板列表
- 创建仓库
- 根据仓库名组名获取仓库短id,用以拼接与commitid对应提交详情页面url
- 根据组名和仓库名查询某仓库某分支对应的提交
- 查询某仓库对应的分支
- 根据仓库id查询仓库某分支对应的提交,提供更多可选参数
- 添加部署密钥
- 删除仓库部署密钥
- 获取仓库上一次的提交统计信息
- 仓库统计
- 删除仓库
- 查看仓库的创建状态
- 查询某仓库的标签列表
- 新建标签
- 查询某个仓库的详细信息
- 获取代码提交行数
- 下载仓库
- 新建保护分支
- 删除保护分支
- 批量删除保护分支
- 新建保护tag
- 删除保护tag
- 获取仓库分支列表
- 获取仓库合并请求列表
- 获取仓库合并请求详情
- 获取仓库ip白名单
- 添加仓库ip白名单
- 修改仓库ip白名单
- 删除仓库ip白名单
- 获取合并请求的变化
- 关联仓库与成员组
- 根据仓库短ID锁定仓库
- 根据仓库短ID解锁仓库
- 审核合并请求
- 获取关联工作项信息
- 根据仓库短ID和合并请求短ID获取检视人信息
- 获取变更文件列表
- Tenant
- Group
- V2Project
- RepoMember
- Commit
- File
- User
- Webhook
- Project
- v2仓库管理
- Discussion
- 应用示例
- 附录
- 历史API
-
常见问题
- 认证鉴权问题
- 成员权限问题
-
代码上传下载问题
- 从本地推送代码仓到CodeArts Repo时,报错"Error: Deny by project hooks setting 'default': message of commit"
- 用户推送二进制文件到CodeArts Repo失败
- 执行git push 命令时,报错'origin' does not appear to be a git repository...
- 在CentOS系统下使用HTTPS协议克隆代码时,报错"The requested URL returned error: 401"
- 使用git pull拉取CodeArts Repo的代码失败,报错"Merge branch 'master' of https://test.com Please Enter a commit"
- fatal: refusing to merge unrelated histories
- 如何阻止涉密文件被推送到CodeArts Repo代码仓库
- 仓库迁移问题
- 合并请求问题
- Fork同步问题
- 仓库容量问题
- 常见问题汇总
- 视频帮助
- 计费说明
- 文档下载
- 通用参考
本文导读
链接复制成功!
在本地提交合并请求时,报错"failed to push some refs to '....git'"
问题现象
在多人团队使用CodeArts Repo时,可能出现两个人同时修改同一行代码,这时在推送(push)代码到CodeArts Repo时会出现代码提交冲突并推送失败,并报错"failed to push some refs to '....git'",如下图所示。
图1 push代码时报错信息图

原因分析
同一个文件同一个位置被同时修改,即本地仓与CodeArts Repo代码仓库存在差异,会产生合并冲突。
解决方案
当代码提交冲突产生时,您可以将远程代码仓库拉取(pull)到本地仓库的工作区,这时Git会将可以合并的修改内容进行合并,并将不能合并的文件内容进行提示,开发者只需要对提示的冲突内容进行修改即可再次推送到远程仓库(add → commit → push),这样操作便可以解决合并请求冲突。
在修改冲突文件时应该考虑清楚,必要时要与冲突方联系协商解决,避免覆盖他人代码。
git pull可以理解为 git fetch 的操作 + git merge的操作,其详细说明如下:
git fetch origin master #从远程主机的master分支拉取最新内容 git merge FETCH_HEAD #将拉取下来的最新内容合并到当前所在的分支中
在merge的时候,会将有冲突不能合并的内容做出提示。
如何在代码托管服务的控制台上解决分支合并冲突?
- 在线解决冲突(推荐在代码量较小或涉及冲突的代码量较小的情况下使用)
- 单击“在线解决冲突”,弹出如下图所示的代码冲突。
此页面中您可以直接选择“应用源分支”或“应用目标分支”来选择一方的修改作为最终修复后的内容。
- 当情况较复杂,简单的直接覆盖无法解决问题时,可单击
进入“手动编辑”模式,如下图所示。
- 在上述页面中手动修改代码以解决冲突,并进行提交即可。
说明:
提交时注意需要填写提交信息。
上图中“<<<<” 、“>>>>”、“====”等所在行是冲突展现与分割符,在修改代码解决冲突时,要注意将其删除。
- 单击“在线解决冲突”,弹出如下图所示的代码冲突。
父主题: 合并请求问题