热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在SVN中合并后我无法提交更改-IcannotcommitchangesaftermergeinSVN

IhadaproblemwithcommittingchangesaftermergingtwobranchesofmyprojectusingTortoiseSVN.

I had a problem with committing changes after merging two branches of my project using TortoiseSVN.

在使用TortoiseSVN合并项目的两个分支后,我遇到了提交更改的问题。

Here are details:

这是详细信息:

I did a merge branch to trunk of project which I am working on.

我做了一个合并分支到我正在研究的项目的主干。

Project includes main repository and libraries joint to main repository as svn external (libraries are also branched) as subdirectory of project.

项目包括与主存储库连接的主存储库和库,作为svn external(库也分支)作为项目的子目录。

When I was trying to commit changes TortoiseSVN said:

当我试图提交更改时,TortoiseSVN说:

Commit A
re all the targets part of the same working copy? 
Unable to lock 'D:\websites\project\lib' 
Please execute the "Cleanup" command.

Of course Cleanup didn't help.

当然,清理并没有帮助。

svn:external keyword for project directory was well defined, also lib folder still contained proper version of libraries (trunk version).

svn:项目目录的外部关键字定义良好,lib文件夹中仍然包含正确版本的库(主干版本)。

Both SVN server and client are in 1.5.x version (TortoiseSVN is 1.5.3.x).

SVN服务器和客户端都是1.5.x版本(TortoiseSVN是1.5.3.x)。

From technical point of view both project and libraries are projects in the same SVN repository.

从技术角度来看,项目和库都是同一SVN存储库中的项目。

Any idea what went wrong?

知道出了什么问题吗?

I had been googling a bit for the solution, but didn't find anything useful, so I tried to commit my changes in two steps:

我一直在谷歌搜索解决方案,但没有找到任何有用的东西,所以我尝试分两步提交我的更改:

  1. commit changes from project folder
  2. 从项目文件夹提交更改

  3. commit changes from libraries folder
  4. 从库文件夹提交更改

Which went without any problems.

哪个没有任何问题。

But I am still wondering why I couldn't commit everything in one commit.

但我仍然想知道为什么我不能在一次提交中提交所有内容。

EDITS:

  • (After Ken G answer) Fixed version of TortoiseSVN 1.3.x -> 1.5.3.x.
  • (Ken G回答之后)固定版TortoiseSVN 1.3.x - > 1.5.3.x.

3 个解决方案

#1


1  

svn:external will cause Subversion to combine different repository paths on check-out, but ultimately those paths are still 'disjoint', so you have to do two commits to get the changes applied.

svn:external将导致Subversion在签出时组合不同的存储库路径,但最终这些路径仍然是“不相交的”,因此您必须执行两次提交才能应用更改。

Here's the relevant quote from Version Control with Subversion

这是Version Control with Subversion的相关引用

And Subversion still truly operates only on nondisjoint working copies. So, for example, if you want to commit changes that you've made in one or more of those external working copies, you must run svn commit explicitly on those working copies—committing on the primary working copy will not recurse into any external ones.

Subversion仍然只能在非分离的工作副本上运行。因此,例如,如果要提交在一个或多个外部工作副本中进行的更改,则必须在这些工作副本上显式运行svn commit - 在主工作副本上提交将不会递归到任何外部工作副本。

#2


2  

1.3 of TortoiseSVN is very old, the latest revision being 1.5.x. There have been numerous changes in both Subversion and TortoiseSVN since 1.3, so upgrading your client is probably your best bet.

1.3 of TortoiseSVN非常陈旧,最新版本为1.5.x.自1.3以来,Subversion和TortoiseSVN都发生了很多变化,所以升级你的客户可能是你最好的选择。

Having said that, 1.5 TortoiseSVN is going to create/update Working Copies to a version 1.5 format. BE VERY CAREFUL when using TortoiseSVN (or any SVN client) against a previous Subversion's working copy.

话虽如此,1.5 TortoiseSVN将创建/更新工作副本为1.5版格式。使用TortoiseSVN(或任何SVN客户端)对抗以前的Subversion工作副本时要非常小心。

#3


1  

I think I remember reading about a bug relating to this in TortoiseSVN that's been fixed in the latest release. Check the latest release notes.

我想我记得在TortoiseSVN中读到了与此相关的错误,这个错误已在最新版本中得到修复。查看最新发行说明。


推荐阅读
  • MicrosoftDeploymentToolkit2010部署培训实验手册V1.0目录实验环境说明3实验环境虚拟机使用信息3注意:4实验手册正文说 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • 本文介绍了如何使用Python的Paramiko库批量更新多台服务器的登录密码。通过示例代码展示了具体实现方法,确保了操作的高效性和安全性。Paramiko库提供了强大的SSH2协议支持,使得远程服务器管理变得更加便捷。此外,文章还详细说明了代码的各个部分,帮助读者更好地理解和应用这一技术。 ... [详细]
  • WinMain 函数详解及示例
    本文详细介绍了 WinMain 函数的参数及其用途,并提供了一个具体的示例代码来解析 WinMain 函数的实现。 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • 本文详细介绍了如何解决DNS服务器配置转发无法解析的问题,包括编辑主配置文件和重启域名服务的具体步骤。 ... [详细]
  • 在分析Android的Audio系统时,我们对mpAudioPolicy->get_input进行了详细探讨,发现其背后涉及的机制相当复杂。本文将详细介绍这一过程及其背后的实现细节。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • 1.创建目录mkdir-phomerocketmqnamesvr1data&&mkdir-phomerocketmqnamesvr1log&&mkdir-phomerocketm ... [详细]
  • 在Delphi7下要制作系统托盘,只能制作一个比较简单的系统托盘,因为ShellAPI文件定义的TNotifyIconData结构体是比较早的版本。定义如下:1234 ... [详细]
  • 开机自启动的几种方式
    0x01快速自启动目录快速启动目录自启动方式源于Windows中的一个目录,这个目录一般叫启动或者Startup。位于该目录下的PE文件会在开机后进行自启动 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • 如何将TS文件转换为M3U8直播流:HLS与M3U8格式详解
    在视频传输领域,MP4虽然常见,但在直播场景中直接使用MP4格式存在诸多问题。例如,MP4文件的头部信息(如ftyp、moov)较大,导致初始加载时间较长,影响用户体验。相比之下,HLS(HTTP Live Streaming)协议及其M3U8格式更具优势。HLS通过将视频切分成多个小片段,并生成一个M3U8播放列表文件,实现低延迟和高稳定性。本文详细介绍了如何将TS文件转换为M3U8直播流,包括技术原理和具体操作步骤,帮助读者更好地理解和应用这一技术。 ... [详细]
author-avatar
g我爱他偶买噶
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有