type
status
date
slug
summary
tags
category
icon
password

git实践

需求

多端共同维护同一个库,A端更新了文件并push到了远程库,B端与上一个版本的远程库一致,并进行了更改,更改后未push到远程库(B端版本与远程库版本已产生差异,需保证一直才能push)

解决方案

B端本地库主分支为local,新建dev分支,并pull远程库内容至dev分支,pull完成后git commit dev分支,得到dev分支的版本。切换至local分支(请确认local分支内容已commit至本地库,得到local分支的版本),git diff dev对比local分支与dev分支区别。由于A端更改内容与B端更改内容不冲突,所以只需要git merge dev,合并dev分支即可。如A端与B端更改内容冲突,则需对照diff内容手动编辑,保留最终的内容,重新git add <file>,git commit -m "xxx"提交至本地库,再push到远程库即可。

实现步骤

  1. A端完成更新,推送至远程库。
    1. notion image
  1. B端dev分支pull远程库,local分支与dev分支对比区别,并合并
    1. 发生冲突,由于git实践.md文件中,local分支领先于dev分支,merge操作会导致dev分支覆盖掉local分支,即local中更改的内容会丢失。dev分支的Git速成手册.md文件是领先于local分支的,所以可以直接merge。我们手动编辑git实践.md文件,执行git add操作后重新commit。如下:
      notion image
      notion image
      完整git操作记录
      notion image
       
相关文章
MMSegmentation框架自定义数据集(类)的注册问题本地浏览器通过SSH隧道与远程服务器建立通道实现对远程服务器tensorboard的访问