记录一次通过命令行方式来使用svn碰到的一系列问题
由于使用Xcode自带的svn管理碰到很多问题,搞得头昏脑胀,找资料时看到小码哥这方面的视频,看完就开始折腾了。
准备:1、远程仓库地址及授权账号(用户名和密码)
2、一份项目代码,之所以要有这份代码,是因为远程仓库里没有这份代码,必须提交一份到远程仓库
开始:1、打开命令行,先检查本机svn安装情况
2、有svn ,打开~.subversion/config文件,修改文件,要求过滤掉Pods和Podfile.lock;搜 svn ignores;
3、import 这份代码 to 远程仓库,根据提示依次输入本机密码,服务器端给你账号密码,用浏览器打开远程仓库,看代码是否上次成功;
4、从远程仓库check out代码到本地,定位到check out下来的项目代码目录,使用 pod install 编译Podfile文件,命令行提示完成后,发现缺少Podfile.lock文件,编译这份代码,果然报了几个错误,怀疑是不是cocoaspod出错了,不生成Podfile.lock文件,我甚至怀疑 后缀名.xcworkspace文件都不是pod生成的,而是从远程仓库check out下来的那个文件;
5、验证猜想,新建一个项目,往里加入Pod file文件,编译,发现果然猜想是对的,pod出问题了;
6、pod --version查看pod版本号,提示这个命令有问题,又去pod官网看最新的版本号和本机安装的版本差多少,又去搜“pod 无法生成.xcworkspace”,看到有人碰到和我类似的问题,里面建议重新安装pod,但又涉及到ruby版本,查看ruby,又涉及到gem,ruby和gem相关的东西,安装位置,使用的版本,用gem安装的包等等,本来想查看使用gem安装的包的情况,想找到它们所在的目录,实在没找到,放弃了,咬牙重新安装pod,要是出问题了大不了重来
7、重新pod install 那份check out下来的代码,这下生成了Podfile.lock文件,打开项目重新编译,发现只有一个问题,“ld:library not found for -lCocoaLumberjack”,显示找不到这个库,搜这个问题,一顿排查出错的可能地方,没找到原因;又去Pods目录下找,发现果然没有这个库,又去原始代码下面找,却有这个库,比对两处的Podfile文件,内容一致,怀疑又是pod的版本不同引起的问题,又去前面的测试项目里进行测试,一样的Podfile文件编译后的结果怎么样,结果证明,在新版本的pod编译下,都缺少那个库,原始项目里使用的是老版本的pod生成的目录下有这个库,怀疑Podfile里某个库隐式调用了那个缺失的库,老版本的pod就就把它download下来了,而新版本pod没有这样做,那只好修改Podfile文件,添加那个缺失的库,让pod知道要下载那个库,重新build项目,完美通过build,总算可以舒口气了。
更新于2017-05-17
参考资料:
链接:https://www.jianshu.com/p/c82f1340cf86
记录一次通过命令行方式来使用svn碰到的一系列问题的更多相关文章
- 在非SQL客户端使用命令行方式定期连接SQL Server 服务器并模拟用户查询操作,同时输出信息内容
一个很长的标题,实现的功能就是尽量使用非人力的方式模拟人去做一件事情,为了便于记录,将他们输出成文件方便查阅. 图形界面方式,使用微软自己的ConnMaker.exe,或者Microsoft 数据连接 ...
- iOS:命令行方式使用OSChina托管私有代码
一.介绍 在项目开发中,使用版本控制工具是必不可少的开发工具,它可以帮助我们程序员写完代码后及时提交备份,防止因个人操作导致代码被误删除了或者丢失了,安全可靠.同时,使用版本控制器工具也可以很方便的进 ...
- mysql命令行方式添加用户及设置权限
以前总是喜欢通过phpmyadmin去添加用户和数据库,这次装完系统后,配置了一大堆东东,实在不想安装phpmyadmin了,就通过命令行方式创建了数据库和设置权限,记录一下,免得以后总是百度 关键步 ...
- Cocos2d-x项目编译为Android应用——命令行方式
配置: 相关工具:Cocos2d-x 3.2 + Ant 1.9.4 + Android NDK r9d + Android SDK 运行平台:OS X 10.9.4+ Xcode 6 前言:笔者使用 ...
- 个人软件过程5 git命令行方式超简洁教程
虽然许多IDE对git的支持不错,但用命令行方式,有助于对git本身的理解.这里对实际工作中,使用git的流程,以及与其相关的命令 小结一下,基本上,掌握这些命令,就能自如的在工作中使用. 1.git ...
- JAVA基础学习之命令行方式、配置环境变量、进制的基本转换、排序法、JAVA文档生成等(1)
1.命令行方式 dos命令行,常见的命令: dir:列出当前目录下的文件以及文件夹 md:创建目录 rd:删除目录 cd:进入指定目录 cd..:退回到上一级目录 cd/:退回到根目录 del:删除文 ...
- Jmeter命令行方式启动
在性能测试过程中,我们常常遇到这样的问题,使用Jmeter的GUI界面进行大并发量的性能测试时,界面容易卡死,无法继续进行性能测试.通过使用命令行方式启动jmeter是一个不错的方式.下面就简单介绍一 ...
- 批处理脚本命令行方式关闭Windows服务
对于一些不常用的Windows Services,可以通过设置其启动类型为"禁用"而将其关闭.这种关闭方式是长期性的,电脑重启之后仍然起作用. 有时候希望在批处理脚本里通过命令行方 ...
- SoapUI命令行方式运行
http://stackoverflow.com/questions/9220132/soapui-groovy-script-calls-to-command-line SoapUI支持用命令行方式 ...
随机推荐
- 解析javascript变量
//add by tim//提供解析javascript 脚本的变量集合 using System;using System.Collections.Generic;using System.Linq ...
- 获取http请求的响应状态
import urllib.request url="http://www.baidu.com" #返回一个对象 response=urllib.request.urlopen(u ...
- c++性能测试工具:google benchmark入门(二)
上一篇中我们初步体验了google benchmark的使用,在本文中我们将更进一步深入了解google benchmark的常用方法. 本文索引 向测试用例传递参数 简化多个类似测试用例的生成 使用 ...
- 彻底解决SysFader:IEXPLORE.EXE应用程序错误
彻底解决SysFader:IEXPLORE.EXE应用程序错误 转载于 西部e网(weste.net) 最近安装了IE8浏览器玩玩,但是发现一个严重的问题,就是在访问某些页面的时候,经常会出现“ysF ...
- 开源ORM
Farseer.net轻量级开源框架 目录 https://github.com/steden/Farseer.net ---------------------------------- SunSo ...
- 在IDEA里gradle配置和使用
在IDEA里gradle配置和使用 在IDEA里gradle配置和使用 前言 Windows环境IDEA配置gradle 配置系统环境变量 下载 配置环境变量 测试 idea配置 gradle仓库设置 ...
- ObjectARX2012错误1 fatal error C1083: 无法打开包括文件:“arxHeaders.h”: No such file or directory; fatal error C1083: 无法打开包括文件:“map”: No such file or directory
问题1:fatal error C1083: 无法打开包括文件:“arxHeaders.h”: No such file or directory: 解决办法:这个问题很明显,是因为没有在工程属性里包 ...
- ElasticSearch | windows 上安装ES
Elastatic需要java JAVA8 环境,确保安装好环境 在windows上安装ES还是比较简单的, 1.首先在官网上下载zip,地址 https://www.elastic.co/downl ...
- 题解报告:NYOJ #311完全背包(恰好装满)
描述: 直接说题意,完全背包定义有N种物品和一个容量为V的背包,每种物品都有无限件可用.第i种物品的体积是c,价值是w.求解将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大.本题 ...
- java的构造方法 this 重载
this1.隐含的局部变量在方法中指向调用该方法的对象()使用:当成员变量与局部变量同名的时候,通过this说明哪一个是成员变量.(this指向的是成员变量) 2.作为当前类的构造方法名存在作用:在构 ...