标签: revision

SVN:是否可以获取给定路径的修订号列表?

我正在制作一个连接到存储库的PHP工具,下载提交列表并在本地存储它们.但是,由于某些存储库可能很大并且抓取其日志会导致等待时间过长和可能的超时/错误,我想使用异步请求下载每个提交消息.

所以,我在修订历史中有一个起点和终点,我可以像这样抓取所有日志:

svn log -r <from_revision>:<to_revision> <REPO_URL>

...我最终可能会得到一个XML文件,这个文件非常庞大,需要很长时间才能下载,需要很长时间和大量资源才能解析,并且需要很长时间才能存储.

如果我知道开始和结束点,我可以创建一个for()循环来逐个获取修订:

svn log -r <revision> ...

但是,由于我不知道给定路径存在哪些具体修订,我将收到错误.我可以让应用程序在更新期间忽略该错误,但它是一个讨厌的黑客,它会发布请求并等待响应 - 无论如何都不好.

所以,我需要这样的东西:

  • "给我这条路径的修订号列表",或者:
  • "给我这条路径的修订号列表,在和之间

这样我就可以为存储库路径创建一系列有效的修订版本并逐个获取它们.

欢迎提出所有建议,谢谢.

svn revision subdirectory

14
推荐指数
2
解决办法
5万
查看次数

我提交后如何在源代码中存储新的SVN修订号?(TortoiseSVN的)

是否有可能通过TortoiseSVN知道您将在提交之前获得的SVN转数,以便我可以将rev#放入源代码注释部分?

也许有一个特殊的键名/变量我可以放入我的文件中,TortoiseSVN将自动替换为它即将提交的rev#?

这背后的动机是我可以通过查看源代码来获取最新版本,并查看它包含的SVN版本.它还给管理层带来了温暖的模糊.

svn tortoisesvn revision

14
推荐指数
2
解决办法
3万
查看次数

SVN Revert Trunk,删除修订版,好像它从未存在过一样?

是否有可能在svn服务器中删除修订版,好像它从未存在过?

所以我们有以下修订:

1004 // Commit of some bogus code that broke the build and was just wrong
1003 // Change 1.2
1002 // Change 1.1
1001
1000 *** Initial checkin
Run Code Online (Sandbox Code Playgroud)

我们可以删除svn中的1004并恢复到1003,好像1004从未存在过吗?

原谅我的无知,我还在学习如何使用SVN.

svn revision revert svn-trunk

14
推荐指数
2
解决办法
4万
查看次数

使用svn,在离线时检查修订号

我离线了(好吧,确切地说我的svn存储库现在无法访问),但是我有一个完全成熟的工作副本我就是,工作:-)

现在我需要知道文件的修订号.如何svn:keywords在离线时检查特定文件的修订号(顺便说一下,没有属性)?

我通常会检查他们svn ls -vsvn log | headsvn blame(当然他们更多比我在寻找现在).

svn version-control revision offline-mode

13
推荐指数
1
解决办法
3万
查看次数

如何向源添加修订和构建日期?

我有一个GCC项目,并希望自动添加构建日期和修订号(从git)的定义到我的源.最好的方法是什么?

我的目标很简单,能够在启动时做这样的事情:

printf("Test app build on %s, revision %d", BUILD_DATE, REVISION)
Run Code Online (Sandbox Code Playgroud)

对于构建我使用make与简单的Makefile.inc,而不是autoconf或类似的东西.

git gcc revision date build

13
推荐指数
1
解决办法
6421
查看次数

Subversion奇怪 - svn信息修订高于上次更改项目文件夹的rev

有事情发生,我无法解释.

我有我的项目的工作副本 - 完成svn更新(说:更新到修订版1895),我知道这是最新的.当我svn info在项目文件夹上执行一个时,版本是1895年,但最后更改版本是1888年.

使用TortoiseSVN检查日志显示1888作为最后修订,没有1895年的痕迹.1895 svn log年是空的,svn diff1895年和1888年之间也是空的,即.没有差异.

我是如何以某种方式最终得到一些没有真正改变的流氓修订?它基本上导致构建服务器(认为它是在1888年)与我的MSBuild SvnVersion任务不同步(认为修订版是1895).

任何建议赞赏.

编辑:如果版本将始终显示整个存储库的最新版本,这意味着像SvnVersion MSBuild任务(使用svnversion.exe,但表现出类似的行为)之类的东西不会显示当您有多个项目时的正确修订存储库,您需要使用"Last Changed Rev"作为您的版本号.

结果,现在滚动我自己的SvnLastChangedRev MSBuild任务.

svn msbuild version-control revision

12
推荐指数
1
解决办法
9710
查看次数

所有原生修订数据库在哪里?

我已经阅读了所有SO问题,编码恐怖文章,并搜索了我的大脑,寻找修改控制数据的最佳方法.他们都工作,他们都有基于用例等的适当实现.我真正想知道的是为什么没有编写数据库来本地支持数据级别的修订?

我感到困惑的是,API已经实际上与交易相关.我们启动事务,更改一些数据并提交.我们也在对数据库进行身份验证,因此存在责任.我公司存储整个数据库的月末版本,用于会计目的,等同于标签.这不是尖叫RCS吗?

分支是数据库可以从模式而不是数据中获益的东西.因为我真的只关心数据,这会大大增加实现的难度,我会坚持只使用标签和提交.

现在我知道数据库是非常时间关键的应用程序,所以任何不必要的开销都被忽略了,有些数据库是史诗般的巨大数据库,而且修订版只会取代这个数量.每个表,选择加入版本控制无疑在中小规模的环境中占有一席之地,其中有几毫秒的备用时间和数据历史具有一定程度的重要性.我想要提交,我想要日志,我想要恢复,我想要差异,我想要责备,我想要标签,我想要结帐.我想要MF-ing版本控制.

我在那里有一个问题......

database version-control revision database-design

12
推荐指数
1
解决办法
712
查看次数

Phabricator:Arcanist:arc diff --update:未找到任何变化

我最近开始使用phabricator.我正在使用Arcanist CLI将差异提交给phabricator.直到昨天工作正常,今天每当我尝试创建新版本或更新现有版本时,它都会抛出错误.

这是我用来更新修订版的命令 D3

arc diff --update D3
Run Code Online (Sandbox Code Playgroud)

在我输入注释后,它会抛出以下异常

Linting...
No lint engine configured for this project.
Running unit tests...
No unit test engine is configured for this project.
Usage Exception: No changes found. (Did you specify the wrong commit range?)
Run Code Online (Sandbox Code Playgroud)

你们知道可能出现什么问题吗?

command-line revision updates phabricator

12
推荐指数
1
解决办法
1万
查看次数

我怎么说svn中的HEAD-1?

我想在HEAD或类似之前提及头部或n次修订之前的版本.

svn revision

11
推荐指数
2
解决办法
2584
查看次数

将mercurial changeset注入C可执行文件中的版本信息

我希望我正在处理的项目的可执行文件记录了最新的mercurial变更集,以便当用户抱怨错误行为时,我可以跟踪他们正在使用的版本.我的一些可执行文件是Python,其他的是C编译.有没有办法自动化这个,或者你能指出我展示解决方案的项目吗?

我在我的项目中使用autoconf ...以防止解决方案更容易.

谢谢!

那么setjmp

c autoconf revision version changeset

10
推荐指数
2
解决办法
1429
查看次数