218、SVN出现黄色叹号、红色叹号的问题及解决方法 2019.11.05

1、SVN出现黄色叹号

1.1 出现原因

  • 若出现黄色叹号小图标,说明你修改文件之前,并没有先更新最新版本
  • 而是直接在旧版本上修改,同时你修改的内容,刚好与别人修改的内容有冲突
  • 于是当你提交时,SVN就会先提示你升级到最新版
  • 当你获取最新版的时候,由于svn识别不了同一个内容位置出现不同的情况
  • 通俗点说,就是SVN不知道该用谁的内容,这时就会出现黄色叹号!同时会产生多余的三个文件。在这里插入图片描述
  • index.shtm.mine 这个文件是你刚刚修改的文件
  • index.shtm.r65459 这个文件是你修改文件前的当前版本文件
  • index.shtm.r67059 这个是最新版本的文件

叹号文件内容对比

打开index文件,这时你会发现里面出现了一些

<<<<.mine、====、>>>>.r67059

的特色符号和文字,这就是文件起冲突的地方。

=== 上部分是你修改的内容,===下部分是最新版本的内容如果你如果不想用最新版本的内容,就把“===下部分到“>>>>.r67059这部分内容删了,同时去掉<<<<.mine、=、>>>>.r67059 这些符号保存即可

在这里插入图片描述
当你按上一步修改了内容后,回到本地文件,删掉刚才上面多余的三个文件

1.2 解决方法

  • 在当前目录下执行“update”(更新)操作

  • 在冲突的文件上(选中文件–右键—TortoiseSVN—Edit conflicts(解决冲突))

  • 出现如下窗口

    • Theirs窗口为服务器上当前最新版本
    • Mine窗口为本地修改后的版本
    • Merged窗口为合并后的文件内容显示

在这里插入图片描述

  • 如果要使用服务器版本,在Theirs窗口选中差异内容,右键,选择Use this text block(使用这段文本块)
  • 如果要使用本地版本,在协商后,在Mine窗口右键,选择Use this text block(使用这段文本块)
  • 此外,如果存在两个人对某个文件同时进行了修改,你认为你的修改和别人的修改都有一部分是有效的,那么你就把别人的修改手动合并到你的修改中,然后使用TSVN标注为“解决冲突”,然后就可以提交了。
  • 修改完成后,保存文件内容
  • 本地用户在冲突目录下,选中文件->右键菜单->TortoiseSVN->Resolved(解决)。会列出冲突的文件列表,如果确认已经解决,点OK
  • 提交解决冲突后的文件

2、SVN出现红色叹号

2.1 出现原因

本地代码与SVN库中的代码没有保持一致!

2.2 解决方法

  • 恢复本地的文件:在该文件或文件夹点击右键TortoiseSVN-revert,如若还未恢复正常,可右键TortoiseSVN->clean up!
  • 恢复SVN服务器的文件:另外一种解决方法,删除此红色文件,然后Update更新一下即可

3、SVN注意事项

##如果自己所负责的代码分涉及到其他人了,禁止私自修改
1.先Update更新再Commit提交
2.提交的时候以“姓名—修改内容”格式进行
3.只提交自己修改的部分,勿提交整个解决方案
4.调试完毕之后,只有运行无错误、生成无错误才可提交
5.尽量做到多提交(保留自己每一步变化的版本控制)
6.开发的时候最好还是有一个SVN的负责人来管理,维护好代码,提高开发的进度

4、参考链接

[01] 百度经验 - SVN出现叹号怎么解决?
[02] CSDN - SVN出现红色叹号!
[03] CSDN - SVN中出现红色感叹号

  • 3
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目 录 为什么需要使用配置管理软件 SVN相关的基本概念 TSVN的使用流程及图标说明 TSVN基本功能的介绍 常见问题 SVN培训教程全文共43页,当前为第1页。 使用配置管理的理由 及时了解团队中其他成员的进度。 轻松比较不同版本间的细微差别; 记录每个文件成长的每步细节,利于成果的复用(reuse); 资料共享,避免以往靠邮件发送文件造成的版本混乱; 人人为我,我为人人。所有成员维护的实际是同一个版本库,无需专人维护所有文件的最新版本; 协同工作,大大提高团队工作效率,无论团队成员分布在天涯还是海角; SVN培训教程全文共43页,当前为第2页。 SVN基本概念 配置库( Repository ) SVN的核心是配置库,储存所有的数据,配置库按照文件树形式储存数据-包括文件和目录,任意数量的客户端可以连接到配置库,读写这些文件。通过写数据,别人可以看到这些信息;通过读数据,可以看到别人的修改。 最特别的是 Subversion 会记录配置库中的每一次更改,不仅针对文件也包括目录本身,包括增加、删除和重新组织文件和目录。 SVN培训教程全文共43页,当前为第3页。 SVN基本概念 工作副本(WorkSpace) 与位于中央配置库相对应的是每个人的工作空间,它是每个程序员工作的地方,程序员从配置库拿到源代码,放在本地作为工作副本,在工作副本上进行查看、修改、编译、运行、测试等操作,并把新版本的代码从这里提交回配置库库中。 SVN培训教程全文共43页,当前为第4页。 SVN基本概念 配置库 工作副本 Checkout Commit SVN培训教程全文共43页,当前为第5页。 SVN的工作模式 复制-修改-合并方案(Subversion默认的模式) 在这种模型里,每一个客户读取项目配置库建立一个私有工作副本——版本库中文件和目录的本地映射。用户并行工作,修改各自的工作副本,最终,各个私有的复制合并在一起,成为最终的版本,这种系统通常可以辅助合并操作,但是最终要靠人工去确定正误。 锁定-修改-解锁方案 在这样的模型里,在一个时间段里配置库的一个文件只允许被一个人修改。 此模式不适合软件开发这种工作。 SVN培训教程全文共43页,当前为第6页。 TSVN的使用基本流程 SVN培训教程全文共43页,当前为第7页。 SVN使用图标说明 一个新检出的工作副本使用绿色的对勾表示Subversion状态 正常. 当我们开始编辑一个文件后,图标将变成红色感叹号。通过 这种方式,可以很容易地看出我们对哪些文件进行了修改操 作,但是还没有提交到版本库中; 如果在提交的过程中出现了冲突,图标将变成黄色感叹号。 如果我们拥有了一个文件的锁,并且Subversion状态是正常, 这个重载图标将提醒我们:如果不使用该文件的话,请进行 释放锁操作,允许其他成员提交对该文件的修改。 SVN培训教程全文共43页,当前为第8页。 SVN使用图标说明 这个图标表示当前文件夹下的某些文件或文件夹已经被计划从版本控制中删除,或是该文件夹下某个受控的文件丢失了。 加告诉我们有一个文件或是目录已经被计划加入版本控制。 SVN培训教程全文共43页,当前为第9页。 CheckOut(检出) 作用:将版本库中的内容检出到本地工作副本 步骤: 1.新建一个空文件夹; 比如:E:\Proj_trunk 2.在此目录中点击右键-> SVN Checkout... SVN培训教程全文共43页,当前为第10页。 CheckOut的注意项 检出深度: 1.全递归(默认选择) 检出完整的目录树,包含所有的文件或子目录。 2.直接节点,包含目录 检出目录,包含其中的文件或子目录,但是不递归展开子目录。 3.仅文件子节点 检出指定目录,包含所有文件,但是不检出任何子目录。 4.仅此项。 只检出目录。不包含其中的文件或子目录。 省略外部引用:如果项目含有外部项目的引用,而这些引用我们不希望同时检出,请选中忽略外部项目复选框。如果选中了这个复选框,更新的时候要使用命令"更新至版本Update to Revision..." SVN培训教程全文共43页,当前为第11页。 Update(更新) 作用:更新工作副本使其成为版本库中的最新版本 SVN将显示出更新的文件和更新的次数 SVN培训教程全文共43页,当前为第12页。 Commit(提交) 对工作副本进行编辑后提交到SVN 在右键菜单中点击SVN Commit 提交前写好信息,点击确定 SVN培训教程全文共43页,当前为第13页。 ——权限控制 当进行提交文件操作的时候您将看到权限提示信息 输入您的用户名和密码 保存权限设置(见红圈) ,可以避免将来重复输入用户名和密码 SVN培训教程全文共43页,当前为第14页。 ——如何删除认证数据 步骤:点击右键
当在SVN中看到红色感叹号时,通常表示文件或文件夹在本地工作副本中发生了某种变化或冲突。这可能是由以下几种情况引起的: 1. 本地修改:文件或文件夹在本地工作副本中被修改了,但还没有提交到版本库中。这可能是因为你对文件进行了编辑或者对文件夹进行了重命名、删除等操作。 2. 冲突:当多个用户同时修改同一个文件时,可能会发生冲突。如果SVN检测到你的本地修改与版本库中的修改冲突,就会显示红色感叹号。 3. 缺失:如果文件或文件夹在版本库中被删除或移动,但你的本地工作副本中仍然存在,SVN会将其标记为缺失,并显示红色感叹号解决红色感叹号问题方法如下: 1. 提交修改:如果你对文件进行了修改,可以通过提交操作将修改保存到版本库中。右键点击文件或文件夹,选择"提交"选项,然后输入提交信息并点击"提交"按钮。 2. 解决冲突:如果发生了冲突,需要手动解决冲突并标记为已解决。右键点击冲突文件,选择"解决冲突"选项,然后根据提示进行合并或手动编辑冲突部分。 3. 更新工作副本:如果文件或文件夹在版本库中被删除或移动,可以通过更新操作将工作副本与版本库同步。右键点击文件或文件夹,选择"更新"选项,SVN会自动处理缺失的文件或文件夹。 希望以上解答对你有帮助!如果还有其他问题,请继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值