svn - 使用 CMake 命令从旧版本中提取分支的 SVN 信息
问题描述
我有一个与此相关的问题,但更多的是 CMake 命令。
我在我的项目中使用 find 包来获取有关我需要在我的应用程序中显示的工作副本修订的信息。
# Load built-in SVN module
find_package(Subversion)
if(SUBVERSION_FOUND)
# WC_INFO will define ${PROJECT_NAME}_WC_REVISION among others
subversion_wc_info(${PROJECT_SOURCE_DIR} ${PROJECT_NAME})
set(${PROJECT_NAME}_VERSION_REVISION ${${PROJECT_NAME}_WC_REVISION})
endif()
问题:
我从旧版本创建了一个分支(#300)
来修复一些错误并将新分支切换到当前工作副本。但是当我find_package(Subversion)
在新创建的分支上运行命令时,它给了我相同的 WC 副本修订#363
。我期待得到新#355
分支${${PROJECT_NAME}_WC_REVISION}
的工作副本修订版应该是#355
. 但我得到#363
了两个分支。
Main
|
#300 |---branch
| |
| |
| HEAD (committed changes at #355)
|
|
HEAD
#363
我在这里错过了什么吗?我认为${${PROJECT_NAME}_WC_REVISION}
应该给我当前请求的分支的 HEAD 修订。我如何获得svn HEAD info
各个分支机构的?
解决方案
在Subversion
存储库中切换分支时,您需要删除CMakeCache.txt
并重新运行CMake
.
推荐阅读
- laravel - 数据库队列连接在生产中不起作用
- excel - 宏运行时错误 5 无效的过程调用或争论
- c# - 从另一个调用 HTTP 触发的 Azure 函数
- data-structures - 使用递归在 Python 中反序列化二叉树
- html - 为 box-shadow 设置宽度并使其成为角落 - CSS
- javascript - 我正在将一个道具从 App.js 传递给 MovieCard.js,但传递的道具显示为空
- flutter - 在依赖项上出现“重复映射键”错误
- c - 使用 Cilk Plus 数组表示法编译 C 文件
- html - How to shorten repetitive div elements in XPath selection?
- typescript - Typescript 使用 keyof 时,索引签名参数类型必须是“字符串”或“数字”