在git-svn环境

时间:2016-02-04 16:26:58

标签: svn makefile git-svn

我使用以下命令从svn服务器获取存储库:

git svn clone ...

但是,在构建特定目标时,stdout会显示以下内容:

error: 'SVN_REV' undeclared here (not in a function)
__attribute__((used)) u32 sys_fw_info = SVN_REV;

这是简化的makefile:

haha: dirs revision
    -$(MAKE) -C ./src

revision:
    -$(SVNVERSION) . version.tmp build/svnrev.h

我尝试了以下内容:

  1. 如果我从svn服务器中的普通checkout存储库复制.svn文件夹[因为我从git-svn获得的文件夹只有.git文件夹],那么我可以在git-svn中构建haha的目标环境。

  2. 如果我手动执行以下命令而不复制.svn文件夹:

    SubWCRev.exe . version.tmp  build/svnrev.h
    
  3. 建筑过程仍然失败...... 有以下两个问题:

    1. 我不知道.svn文件夹是否与构建过程存在某种依赖关系?
    2. 如何在本地优雅地使用git-svn?
    3. 提前致谢!!!

1 个答案:

答案 0 :(得分:1)

  

我不知道.svn文件夹是否与构建过程存在某种依赖关系?

间接

必须使用subwcrev预处理您的来源(为了获得svnrev.h中定义的变量),并且subwcrev必须能够访问Subversion工作副本({ {1}})获取基于svn的元数据(Git'工作目录中不存在)

  

如何在本地优雅地使用git-svn?

您必须至少尝试检查SubWCRev.exe .的输出。其中的This questionanswer of @bmv主要有助于