我是最近的git转换器.很高兴能够使用git-svn在不干扰svn服务器的情况下在本地保留我的分支.最新版本的代码中存在一个错误.我想建立一个工作时间,以便我可以使用git bisect.我无法找到正确的命令,以便及时返回.谢谢.
我有一个完整的SVN存储库的工作副本,但由于磁盘空间问题,我想将其更改为稀疏的工作副本.
一种方法是:
svn up --set-depth immediates projects
svn up --set-depth infinity projects/project1
svn up --set-depth infinity projects/project2
Run Code Online (Sandbox Code Playgroud)
但是,这会先删除project1
和project2
,然后重新下载它们.这真的很不方便,因为它们非常大,服务器的上传速度非常低.我试过这个(用另一个,更小的部分回购,作为实验):
svn up --set-depth infinity projects/project1
svn up --set-depth infinity projects/project2
svn up --set-depth immediates projects
Run Code Online (Sandbox Code Playgroud)
但是最后一个命令只撤消了前两个命令.
如何在不立即更新/更改工作副本的情况下设置工作副本的深度,这样我才有机会首先正确配置子目录?
或者是否有另一种方法来实现我想要的,例如通过复制project1
并首先project2
到达安全的位置?
这么长时间的SVN用户,但在分支/标记方面相当缺乏经验,当我怀疑我没有真正正确使用它或充分发挥其潜力.
我有我的主干,我正在努力添加新的功能等.这个代码库用于多个网站,我们在每个项目的基础上创建一个分支机构.
每个分支通常都有特定于该项目的修改,我们认为可重复使用的任何内容都会添加到主干中,并且可以在各种项目上打开和关闭功能.
目前,当我们对主干进行更改,并希望在预先设置的分支中进行修改时,我必须通过手动将某些修订合并到分支中并重新发布它们.不理想,容易错过的东西.
所以,我的问题......有没有办法用中继的所有更改来更新我的分支,并处理它们就好像它是冲突的标准主干更新?
我已经看到将分支重新集成到主干,但由于我在这种情况下使用分支的方式,这不是我想要做的事情.
我打算跑(在我的服务器上!)
svn更新
更新我的LIVE网站的更新.但是,我担心"C"冲突会阻止我的网站脚本运行.如何强制结帐/更新过程覆盖所有本地文件(在我的服务器上!)?
我知道一个解决方案是在一个单独的目录上执行此操作 - 其他任何更有效的方法吗?
我看过Force一个SVN checkout命令来覆盖当前文件
我没有--force选项
运行时svn up
我会经常遇到这个提示:
Conflict discovered in 'lib/somelibrary.so'.
Select: (p) postpone,
(mf) mine-full, (tf) theirs-full,
(s) show all options:
Run Code Online (Sandbox Code Playgroud)
击中s
显示的选项mc
和tc
,矿冲突和他们的冲突,据称允许我采取任何我的版本或将其用于所有冲突版本,而不是只somelibrary.so
.
但是,这些选项不起作用.我收到这条消息:
Invalid option; cannot choose based on conflicts in a binary file.
Run Code Online (Sandbox Code Playgroud)
埃德温的回答清楚地表明,我误解了如何mc
和tc
工作,但我还是希望能够承担每一个冲突的文件相同的分辨率.有没有办法让svn使用mf
或tf
在每次冲突时都不会在第一次之后再次提示我?
我也看到了类似标题的问题,但是这个问题有异常,即在服务器上更新时出错,因此无法删除以前的无版本目录.
我正在使用SVN上传代码文件,我们手动在服务器上创建了上传的图像目录,并且不通过svn提交上传图像,因为服务器和本地机器上的用户内容可能不同,这取决于数据库中的数据.
很明显有人提交了uploads/images目录,所以我遇到了以下问题:
svn: Failed to add directory 'assets/uploads/images': an unversioned directory of the same name already exists
Run Code Online (Sandbox Code Playgroud)
我知道为什么会发生这种情况,这是因为在同一位置存在未版本控制的文件,所以我的问题是我该如何修复它?
我不想删除远程目录,因为它包含与服务器数据库记录相关的图像.那么我该如何恢复该提交的目录呢?我试过svn-> revert modification->还原该目录中的先前提交但是会出现以下错误:
org.apache.subversion.javahl.ClientException: E195020: Cannot merge into mixed-revision working copy [341:448]; try updating first
Run Code Online (Sandbox Code Playgroud)
所以任何想法,我该如何解决?如果在理解问题时遇到任何问题,请给我发表评论,我会说清楚.
谢谢
我将Eclipse 3.5用于几个不同的Java/JSP项目.我们所有的项目代码都存储在Subversion中.我使用Subclipse插件来更新/提交代码.这适用于除一个项目以外的所有项目.有一个项目,几乎每次我进行SVN更新时,整个项目都充斥着Java编译错误.大多数错误都是抱怨它无法在同一个项目中找到其他类文件.要解决这个问题,我必须转到Project> Clean并手动清理项目,这需要一段时间才能运行.在此之后,一切都编译得很好,但是每次进行SVN更新时都必须手动清理项目,这有点痛苦.这只发生在这个单一项目中.
有人经历过这样的事吗?我甚至不确定在哪里找出为什么项目需要不断手动清理.是否有可能其他人正在检查破坏我在Eclipse中构建项目的文件?如果是这样,我应该寻找哪些文件?
我有一个名为'repo'的Subversion存储库.回购内部是主干/分支/目录.在分支机构内/有几十个发布分支,例如1.0 /,1.1 /.这些分支/目录包含相对较大的应用程序.
我想在repo的根目录添加一个外部,称为"myExternal".当我定义外部时,获取SVN来创建myExternal /目录的唯一方法是从repo的根目录运行'svn up'.但是,这也会导致分支/的全部内容被检出,这是不可接受的(我们有许多开发人员需要将myExternal /添加到他们的repo副本中,并且不能让所有这些内容都检出千兆字节不需要的分支).
我试过'svn up -set-depth immediates',但这似乎没有得到外部.有没有办法告诉svn获取myExternal /而不取出所有分支/?
使用SVN 1.7.
我在Windows 7上使用Eclipse JUNO.
我使用Visual SVN作为SVN存储库.
当我尝试更新文件时,我收到错误
' 有些资源没有更新. svn:E155004:'E:\ SVN\tms'中有未完成的工作项; 首先运行'svn cleanup'."
当我通过右键单击项目运行SVN清理时,我收到一个错误
' 部分资源未经清理.svn:E155032:找不到原始文字 '
SvnUpdateArgs asdf = new SvnUpdateArgs();
asdf.AllowObstructions = false;
asdf.Depth = SvnDepth.Infinity;
asdf.IgnoreExternals = false;
asdf.UpdateParents = true;
asdf.Revision = SvnRevision.Head;
asdf.Conflict += new EventHandler<SvnConflictEventArgs>(asdf_Conflict);
asdf.Notify += new EventHandler<SvnNotifyEventArgs>(asdf_Notify);
asdf.Progress += new EventHandler<SvnProgressEventArgs>(asdf_Progress);
SvnUpdateResult res;
client.Status(dir, new EventHandler<SvnStatusEventArgs>(Status_Hook));
if (client.Update(dir, asdf, out res))
{
Console.WriteLine("Updated");
Console.WriteLine(res.Revision);
Console.WriteLine(res.ResultMap);
}
static void asdf_Conflict(object sender, SvnConflictEventArgs e)
{
e.Choice = SvnAccept.TheirsFull;
}
Run Code Online (Sandbox Code Playgroud)
所以我看到更新已编写,但现有文件未更新.如果某些文件丢失 - 它们将被下载.但现有文件未更新.
我很生气,请帮助我,我的英雄!
svn-update ×10
svn ×9
branch ×2
conflict ×1
eclipse ×1
externals ×1
git ×1
git-checkout ×1
git-svn ×1
overwrite ×1
revert ×1
sharpsvn ×1
svn-checkout ×1
svn-merge ×1