zoukankan      html  css  js  c++  java
  • git和svn的混用

    服务器上的项目是使用svn进行管理的。

    本来本地的项目也是通过svn进行管理的,但是后来使用svn的分支功能进行项目的测试/新功能等等时,总是会出现各种各样的问题,遂转投git。

    因为git的分支机制和svn的分支机制不一样,git的更加灵活,强大和稳定。

    首先建立一个本地化的git仓库(可以直接选择项目所在文件夹)

    将服务器上的项目checkout到创建的git仓库里面,此时soureTree里该项目的状态就发生了变化

    然后会发现有许多与svn相关的东西,需要忽略追踪。(*.svn)

    此时需要常规的操作将项目加入到git中(暂存,提交)。

    第一次填写提交信息时会提示填写用户名和邮箱(这些是可以随便填写的,因为这些是用来标记git项目的,但是格式需要正确)

    提交成功之后可以在提交历史中查看

    现在master将作为项目的的主分支而存在,后续项目更新都在分支上进行,用以保证项目的稳定和完整。

    基于master建立一个分支

    因为选择了”检出新分支“所以当前是的分支是branch.

    现在修改branch的内容。然后暂存,提交。

    通过查看历史的提交可以看到master分支并没有出现新增的内容。

    然后改变当前的分支为master,将branch的内容合并到主分支。

    合并成功查看master的相关内容

    如果合并出现冲突需要根据情况进行处理,再次提交就可以了。

    冲突之后的提示大概是这样的:

    现在没有任何问题,就可以按照正常的svn更新流程,将master的新内容提交到远程的服务器了。

    如果需要将项目推送到远程的git仓库,需要注意远程git仓库的初始化,不要添加多余的东西,然后用soureTree添加远程git仓库地址。(gitOsChina)

    完成之后应该是这个样子的

    然后推送即可。

    虽然git本身就提供了git svn相关的操作,可是理解起来比较绕,就依据自己对git和svn使用上的理解自行处理了。


  • 相关阅读:
    leetcode 451 根据字符出现频率排序
    leetcode 1833 雪糕的最大数量
    leetcode 166 Excel表列名称
    877 石子游戏
    01 背包问题
    正则表达式
    leetcode 160 相交链表
    git 备忘录
    leetcode 525 连续数组
    Mysite
  • 原文地址:https://www.cnblogs.com/louyizhidu/p/5957004.html
Copyright © 2011-2022 走看看