标签: svn

重置源文件更改检测

有时我必须处理能够使计算机时钟向前移动的代码.在这种情况下,一些.cpp或.h文件将其最新修改日期设置为将来的时间.

稍后,当我的时钟被修复,并且我编译我的源时,系统会重建大部分项目,因为将来会有一些最新的修改日期.每次后续重新编译都有同样的问题.

我知道的解决方案是:

a)找到具有未来时间的文件并重新保存.这种方法并不理想,因为项目非常大,甚至Windows高级搜索也需要时间来查找更改的文件.

b)删除整个项目并从svn重新检查.

有谁知道如何解决这个问题?

在visual studio中是否有一个设置允许我告诉编译器使用存档位而不是最后修改日期来检测源文件更改?

或者可能有一个递归修改日期重置工具,可以在这种情况下使用?

c++ svn time timezone visual-studio

0
推荐指数
1
解决办法
264
查看次数

svn +存储库位置

我即将建立一个通过svn + ssh访问的subversion服务器.我想知道,默认存储库位置在哪里(在unix框上).

你把它放进去了吗

/opt/svn
Run Code Online (Sandbox Code Playgroud)

要么

/home/svn
Run Code Online (Sandbox Code Playgroud)

要么

/usr/subversion
Run Code Online (Sandbox Code Playgroud)

甚至

/svn
Run Code Online (Sandbox Code Playgroud)

或者别的地方?

我正在寻找这个地方,大多数人都把它.有会议吗?

编辑:

绝对可以从用户"隐藏"实际存储库位置.例如(在我的例子中)通过svnserve以下面的方式包装可执行文件:

svnserve -r /var/svn/repos
Run Code Online (Sandbox Code Playgroud)

svn

0
推荐指数
1
解决办法
506
查看次数

如何为Debian下载/安装预编译的Subversion二进制文件

一直试图升级我的subversion安装,但由于(我相信)是有限的权利(我使用托管的Linux帐户),我无法正确"./configure"并编译源代码(见文章Post1)Post2如果非常感兴趣)

所以,我在想如果我可以只下载预编译的二进制文件,那就可以解决我的问题.如果你有更好的想法 - 我也很乐意听到这个想法!

注意:我无法按照subversion.tigris.com的建议调用aptitudeapt-get install subversion

我也有兴趣了解如何安装这些预编译的二进制文件:)

unix linux svn debian

0
推荐指数
1
解决办法
3093
查看次数

您可以更改客户端登录到哪个subversion存储库吗?

在我的笔记本电脑上,我在使用tortoise svn访问我的svn存储库(例如svn:// computername/repository)时使用计算机的名称.但是,当我在网络之外时,我需要使用Internet可寻址名称(例如svn://computername.dyndns.com/repository).我想继续这样做,这样当我在家时,我的签到和更新尽可能快,并且不依赖于另一台服务器正在运行(dyndns).有没有办法使用我已经签出的相同文件夹结构,只是来回更改名称?

svn tortoisesvn

0
推荐指数
1
解决办法
821
查看次数

如何在SVN中运行更新而不会引起许多冲突

我正在使用SVN在一个由四人组成的团队中开发一些软件.

每当我更新我的工作副本时,它会产生比我预期的更多冲突,大量的冲突就像这样:

如果是最初的

 import Class1
Run Code Online (Sandbox Code Playgroud)

我把它改成了

import Class1
import Class2
Run Code Online (Sandbox Code Playgroud)

而另一个团队成员将代码更改为

import Class1
import Class3
Run Code Online (Sandbox Code Playgroud)

Subversion不会合并所有三行.

我想这是因为subversion不知道代码的语义内容,因此无法决定何时/不适合这样做.

我得到的另一个冲突是如果我更换

processA();
processB();
Run Code Online (Sandbox Code Playgroud)

用:

if(x){
  processA();
  processB();
}
Run Code Online (Sandbox Code Playgroud)

整个事情被标记为一个变化,没有办法让它突出显示只有(x)被添加到上方/下方的事实.在这样的情况下,我必须分析新块内的整行,并担心遗漏内部线条的微小变化.

问题是,在这些情况下,我的团队是否有更有效的方式使用SVN,我的大部分时间用于合并.

很抱歉因为我的表情如此长久,感谢阅读.

java svn

0
推荐指数
1
解决办法
150
查看次数

颠覆合并行为

我创建了一个快速示例来演示我的问题。从下面的日志中,您将看到以下内容:

  1. r1 - 创建的中继
  2. r2 - 创建的分支
  3. r3 - 将 foo.txt 添加到主干中
  4. r4 - 创建 QA 分支
  5. r5 - 创建英国分公司
  6. r6 - 创建了 TEAM 分支
  7. r7 - 更新了 foo.txt 并在 TEAM 分支上添加了栏
  8. r8 - 将 TEAM 合并到 QA
  9. r9 - 将 QA 合并到主干中

所以我的问题是,当我尝试这样做时, svn merge -r9:HEAD ^/trunk 从英国目录中我没有得到 r9 更改这是预期的行为吗?

svn 日志 -v -g ^/
-------------------------------------------------- ---------------
r9 | 阿纳齐莫克 | 2012-03-15 21:16:37 -0400(2012 年 3 月 15 日星期四)| 1 行
改变的路径:
   M /主干
   A /trunk/bar(来自 /branches/QA/bar:8)
   M /trunk/foo.txt …

svn svn-merge

0
推荐指数
1
解决办法
437
查看次数

“SVN 信息”命令中的“不支持 UNC 路径”错误

我正在尝试运行命令:

cmd.exe /X /C "svn --non-interactive info <file name>

通过使用commandline.class来自调用的 API (org.codehaus.plexus.util.cli) SVNInfoCommand.class(org.apache.maven.scm.provider.svn.svnexe.command.info)

当我传递存在于 C:\ 驱动器中的文件名时,它工作正常。但是当我传递存在于共享位置或网络驱动器中的文件名时,它返回以下错误。错误:“不支持 UNC 路径。默认为 Windows 目录。svn:'.' 不是工作副本”

当前工作目录是使用方法设置的setWorkingDirectory( String path ),但我怀疑当我们使用共享位置(UNC 路径)时没有设置工作目录。

例如:\Test_Location\Test_File

当我传递位于共享驱动器中的文件名的“绝对路径”时,此命令工作正常。

(\Test_Location\Test_File)

请让我知道为什么即使在设置工作目录后我们使用 UNC 路径时也会出现此错误。

java svn windows cmd unc

0
推荐指数
1
解决办法
1794
查看次数

按文件模式还原 svn 文件

我试图找到一个命令(可以是 bash 命令)来恢复一组 svn 文件。

假设我在结帐时进行了一些更改,然后运行svn st并获得以下输出:

My-MacBook-2:trunk aetzioni$ svn st
M    SomeFolderA/src/main/java/com/mycompany/package/classA.java
M    SomeFolderA/main/java/com/mycompany/package/classB.java
M    SomeFolderB/src/main/java/com/mycompany/package/classC.java
Run Code Online (Sandbox Code Playgroud)

现在我想找到一个svn revertSomeFolderA.

我试过这样的事情:

svn st | grep SomeFolderA | svn revert
Run Code Online (Sandbox Code Playgroud)

但收到此错误消息:

svn: Try 'svn help' for more info
svn: Not enough arguments provided
Run Code Online (Sandbox Code Playgroud)

svn bash revert

0
推荐指数
1
解决办法
1663
查看次数

使用 Subversion 从 Git 下载单个目录

我正在尝试使用 SVN 和此处找到的说明从 Github Git 存储库下载文件夹

但是,当我输入:

svn checkout https://github.com/johnmyleswhite/ML_for_Hackers/tree/master/08-PCA/data .
Run Code Online (Sandbox Code Playgroud)

我收到错误消息:

svn: E170000: URL ' https://github.com/johnmyleswhite/ML_for_Hackers/tree/master/08-PCA/data ' 不存在

任何想法出了什么问题?我在 64 位 Windows 上使用Slik SVN

svn git

0
推荐指数
1
解决办法
1068
查看次数

每个存储库 AuthzSVNAccessFile apache 规则与单个 apache 配置文件或其他 shell 脚本解决方案

我正在编写一组 svn 钩子来允许远程管理 SVN 存储库,就像 gitolite 对 GIT 所做的那样。

我创建了为我拥有的每个存储库生成 AuthzSVNAccessFile 的脚本,现在我需要告诉 Apache 根据存储库查找它们中的每一个。

我不能为每个存储库都有一个 apache 配置文件,因为它需要重新启动 apache 服务器。

我知道我可以使用单个 AuthzSVNAccessFile 来管理多个存储库,但是构建文件的脚本需要时间(需要发现存储库中每个目录的完整路径),并且会使提交花费太长时间。

我尝试使用mod_rewrite,但没有用,可能是我用错了。

基本上我需要在我的 apache 配置文件中有一个规则,根据请求的 URL 读取不同的文件,这可能吗?如何?

或者我需要一个能够重写文件块的脚本。我sed用来替换模板中的字符串,但不知道如何使用它来替换多行。

谢谢你的时间

svn apache shell mod-rewrite apache2

0
推荐指数
1
解决办法
2882
查看次数

标签 统计

svn ×10

java ×2

apache ×1

apache2 ×1

bash ×1

c++ ×1

cmd ×1

debian ×1

git ×1

linux ×1

mod-rewrite ×1

revert ×1

shell ×1

svn-merge ×1

time ×1

timezone ×1

tortoisesvn ×1

unc ×1

unix ×1

visual-studio ×1

windows ×1