专业java、php、iOS、C++、网页设计、平面设计、网络营销、游戏开发、前端与移动开发培训机构

git解决冲突

  1. 在多人开发的项目中,出现代码冲突是正常的
  2. 出现的根本原因是修改了同一个文件的同一行或多行
  3. 出现冲突不要怕,解决它就可以了
  4. 尽量减少冲突,多使用 pull 将服务器的代码拉到本地,在最新代码上面添加代码出现冲突的概率就小很多
  5. 有很多同学因为怕出现冲突,不敢往服务器提交代码,等写了几天才去提交一次,这样反而更不好.写了几天代码很多,出现冲突更不好解决

解决冲突练习

  1. 新建 Server(服务器)Manager(经理)LaoWang(老王) 3个文件夹
  2. 经理创建远程仓库
  3. 经理克隆仓库,将远程仓库克隆到 Manager 文件夹
  4. 经理使用 Xcode 新建 iOS 工程项目,并提交到服务器
  5. 老王克隆仓库,将远程仓库克隆到 LaoWang 文件夹
  6. 此时,经理和老王的仓库都是在同一次提交上面 77d6f8
  7. 经理在 AppDelegate.m 的第 20行 添加代码,并且提交到远程服务器
  8. 老王在 AppDelegate.m 的第 20行 添加代码,提交到本地,在提交到服务器,失败会出现 out of date,因为有人先提交了
  9. 老王将服务器的代码 pull 到本地来
  10. 出现冲突,因为2个人都是修改了同一行,需要在本地解决了冲突在提交
  11. 经理 pull 获取服务器最新代码
  12. 老王新建 LaoWangViewController 文件, Xcode 自动修改 project.pbxproj,提交到本地仓库,并且推送到远程仓库
  13. 经理新建 ManagerViewController 文件, Xcode 自动修改 project.pbxproj,提交到本地仓库,无法推送到远程仓库,因为 老王 先提交了
  14. 经理 pull 拉去服务器最新代码到本地,因为2个人都是添加文件, Xcode 自动维护的 project.pbxproj 出现了冲突
  15. 解决冲突以别人的为主,但是自己的 ManagerViewController 并没有出现在 project.pbxproj, 需要自己手动拖入
  16. 经理提交代码,并且提交到服务器
  17. 老王 pull 服务器代码

results matching ""

    No results matching ""