【SVN】在Windows系统上进行SVN的基本操作(检出,更新,提交,分支合并分支,还原,制造冲突以及解决冲突,忽略)

介绍

这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长!

以下为小编最喜欢的两句话:

要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。

一个人为什么要努力? 我见过最好的答案就是:因为我喜欢的东西都很贵,我想去的地方都很远,我爱的人超完美。因此,小编想说:共勉!

目录

一、检出

二、提交

 三、更新

四、制造冲突以及解决冲突

1、制造冲突

 2、解决冲突

方法一:

方法二:

方法三:

方法四:

3、如何降低冲突解决的复杂度

 五、分支合并分支

1、创建分支

 在trunk中创建主程序.txt,并提交 

创建分支

去分支branches中更新

 2、合并分支

 在主程序中合并分支

六、还原

七、忽略


一、检出

右键点击桌面或者空白页面

因为小编在该服务端地址下已经使用账号登录过了,所以点击确定不会出现下一步了。

如果是第一次检出的话,就会出现以下页面

 完成上述步骤就会出现下图的页面

如果没有出现图标,可以去看小编的另一篇博客【SVN已解决】svn下载成功图标不显示解决方法_determine ZandR的博客-CSDN博客

注意:如果在进行其他的操作(除了第一次检出),没有出现svn的图标,可以返回上一级,再进来就会出现图标了

二、提交

 在该文件夹下创建一个文本文档,因为现在是做案例,还没有到真正做项目的时候,所以这个地方创建文件是可以随意的(在真实做项目的时候,这里面文件的命名不能是中文,所以在平时做案例的时候,可以尽量做到规范,这样的话,做项目的时候才不会犯低级错误)

右键点击空白页面或者选中该文件进行提交(选中该文件进行提交是提交这一个文件,点击空白页面提交是提交所有未提交文件

完成以上步骤就提交成功了!

提交成功就会出现下图界面,刚刚提交的a.txt也会有一个svn的绿色图标 

 

 三、更新

更新可以更新你同伴的提交的代码(在实际项目中是两台不同的电脑、两个不同的人因为是做案例演示分别使用两个不同文件夹或者不同账号提交再更新,小编这里演示使用两个不同文件夹提交然后再更新)重复检出的步骤,创建一个文件夹svn-test02

 在两个文件夹中分别创建b.txt   c.txt

 分别在两个文件夹中提交

 可以看到上图两个文件夹中的文件是不一样的,然后再分别在两个文件夹中更新,这样两个文件夹中的文件就是一样的了,如下图:

 完成上述操作就可以完成更新操作了(可以将同伴的代码全部更新到你自己的文件夹来)

四、制造冲突以及解决冲突

小编也是同上面更新一样使用两个不同的文件夹(在实际项目中是两个人(两台电脑)在操作同一个文件才会发生冲突)

1、制造冲突

在test02的c.txt中写入1111111 

 在test01的c.txt中写入222222

提交test02

 更新test01

 更新完成就会发生错误

 就会出现下面的文件 

c.txt.mine 你当前文件夹下面加入内容的代码

c.txt.r22 在该文件夹没加入内容之前的初始版本

c.txt.r23 和你发生冲突的代码,也是服务器更新后的版本(你同伴也修改了这个代码,然后你没有更新就修改了,修改后再更新就会发生冲突)

 2、解决冲突

方法一:

放弃自己的更新,使用文件还原,然后提交。在这种方式下不需要使用svn resolved(解决) (还原之前记得备份自己的代码)

方法二:

放弃自己的更新,使用别人的更新。使用最新获取的版本覆盖目标文件,并提交

 可以查看日志看你自己所需要的版本

点击上图中显示日志,可以选择你所需要的版本

再一直点击确定!

方法三:

手动解决:冲突发生时,通过和其他用户沟通之后,点击解决手动更新目标文件,然后提交。

右击有三角形感叹号的冲突文件


 

 

完成上述操作就会出现下图一样的,代表冲突文件不见了。

 点进去c.txt就可以看到下图像乱码一样的内容

 将乱码(>>>>>>>是代表冲突的地方)去掉,保存,再提交

test02进行svn更新,这样两边的c.txt文件就是一样的了,如下图:

 

方法四:

点击解决冲突

点击解决冲突,出现如下界面

 

 

再看test01文件的时候,就会出现下图

 

点进去看,没有乱码,也没有错误提示,而且两边修改的内容都在里面

 

 点击提交

 然后再在test02更新,最终出现如下图界面

 代表冲突解决,以上就是解决冲突的四种方法

以下为svn一些图标的意思

3、如何降低冲突解决的复杂度


1、当文档编辑完成后,尽快提交,频繁的提交/更新可以降低在冲突发生的概率,以及发生时解决冲突的复杂度。

2、在提交时,写上明确的message,方便以后查找用户更新的原因,毕竟随着时间的推移,对当初更新的原因有可能会遗忘

3、养成良好的使用习惯,使用SVN时每次都是先提交,后更新。每天早上打开后,首先要从版本库获取最新版本。每天下班前必须将已经编辑过的文档都提交到版本库。
 

 五、分支合并分支

Trunk 主干(树干)  branches分支(树枝)tags标签(整棵树)  tags标签(整棵树)


trunk用于主线开发
branches用于定制版本、修复bugs、并行开发等使用
tags用于存放release版本,阶段性代码,不用于修改和commit[备份]


branches用于定制版本、修复bugs、并行开发等使用tags用于存放release版本,阶段性代码,不用于修改和commit[备份]

在branches开发时,要时常从trunk 中更新到branches中,用于同步

当 branches开发完成时,就可以将 branches 重新merge到trunk 中

 选择在test01或者在test02中

小编是选择在test01中进行案例操作

1、创建分支

 

点击空白页面提交

 

 在trunk中创建主程序.txt,并提交 

创建分支

 

 

 

 

去分支branches中更新

 

 

 2、合并分支

在分支branches中主程序分支一中输入内容

 保存之后并提交

 在主程序中合并分支

右击truck中的主程序选择合并

 

 

 

 

合并完成后就提交,然后点入主程序就可以看到之前在分支一中输入的内容了

 

 完成上述操作,就差不多完成了分支和合并分支了

六、还原

在一个文件中输入内容

就会显示红色的,表示修改过了

右击文件选择SVN还原 

最后显示未修改之前的内容

 以上步骤就是还原操作

七、忽略

忽略文件的上传,修改或者刚创建的文件都可忽略,这样就不需要提交,也没有svn的图标

 忽略了之后记得提交

修改之后,再重复上述操作进行忽略

以上就是小编所实践的内容,希望能够帮助到大家,感谢各位大佬的观看!!!

猜你喜欢

转载自blog.csdn.net/weixin_60387745/article/details/130350509