#独家
git-svn拉取远程svn服务器上的代码,目录树不一样,是什么原因?

2023-06-02 0 2,701

远程是svn的服务器,用svn checkout http://<balabal>/namea/trunk拉取到本地,看到一个trunk目录,进去能看到一个目录树,然后进其中一个src目录可以编译成功;但是用git svn clone http://<balabal>/namea/trunk拉取到本地,trunk目录跟上面的步骤有很大的不同,然后进src目录没法编译成功,qmake就失败了,trunk下看到.git/config的内容为:
[svn-remote “svn”]

url=http://<balabal>/namea
fetch=trunk/trunk:refs/remotes/trunk
branches=trunk/branches/*:refs/remotes/*
tags=trunk/tags/*:refs/remotes/tags/*

git branch -a显示:

*master
remotes/trunk

然后,在前面把地址改成git svn clone http://<balabal>/namea,拉取到的code目录多了一层namea,.git目录在namea下面,进入namea/trunk,这次trunk下的目录树跟svn拉取到的完全一致了,然后进入src,这次qmake是可以成功了,但是qmake之后make debug失败,发现有些目录的有些文件没有拉下来,这是为什么呢?!这次看namea下面的.git/config有很大的不同:
[svn-remote “svn”]

url=http://<balabal>/namea
fetch=:refs/remotes/git-svn

git branch -a显示:

*master
remotes/git-svn

改了一下最后一次命令,git svn clone加上-s,现在看起来正常一点,但是仍然少了两个头文件,autopack_parser.h和autopack_sckt.h,不知道这两个头文件是不是qmake自动生成的。把这两个头文件copy过来,make还是失败,报了sckt相关的错误,可能跟默认的系统库不一样有关系吧。哎,git和svn差别这么大啊~~之前看到过一篇文章说把svn迁移到git,目录树完全一样但是编译过不了,好像就是说这个问题,说编译跟版本控制相关。

明白一些了,确认是qmake调用的脚本出问题了,导致两个autopack的头文件没有生成,然后编译错误也知道是怎么回事了,拉新code后,需要make clean然后重新qmake生成新的头文件就行了,跟git-svn系统无关。跟git-svn系统有关的就还是qmake调用的python脚本,在svn系统中是没有问题的,但是到了git-svn系统就有问题了报了一个error:
python3: symbol lookup error: python3: undefined symbol: _Py_LegacyLocaleDetected.
需要继续研究。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1. JK下载官网所有资源来源于开发团队,加入会员即可下载使用!如有问题请联系右下角在线客服!
2. JK下载官方保障所有软件都通过人工亲测,为每位会员用户提供安全可靠的应用软件、游戏资源下载及程序开发服务。
3. JK开发团队针对会员诉求,历经多年拥有现今开发成果, 每款应用程序上线前都经过人工测试无误后提供安装使用,只为会员提供安全原创的应用。
4. PC/移动端应用下载后如遇安装使用问题请联系右下角在线客服或提交工单,一对一指导解决疑难。

JK软件下载官网 技术分享 git-svn拉取远程svn服务器上的代码,目录树不一样,是什么原因? https://www.jkxiazai.com/1778.html

JK软件应用商店是经过官方安全认证,保障正版软件平台

相关资源

官方客服团队

为您解决烦忧 - 24小时在线 专业服务