安装和设置Git
下载Git for
Windows,采用默认安装,安装完成后就可以在本地使用Git了。
但要将内容放到Github上,必须先在Github网站上注册个账户,然后在本机使用Git创建SSH Key。操作如下:
在Git Bash上输入命令:
ssh-keygen -C "[email protected]" -t rsa
Note: “[email protected]”需要更换成你在Github上注册的Email地址或者是Username
这样会在用户目录(C:\Users\用户名)下产生一个.ssh文件夹,里面为对应的SSH
Keys,其中id_rsa.pub是Github需要的SSH公钥文件。
到c:\Users\用户名\.ssh\目录找到id_rsa.pub(可能位置不一定对,但是确认是以.pub结尾的文件),并用记事本打开复制全部内容。
Note:建议私钥公钥的名称最好写成"id_rsa",这样连接Github的时候会找这个文件,如果文件名已定,之后改名也行。
在github网站选择“Account Settings”>>“SSH Public Keys”>>“Add another
public key”,将刚才复制的内容粘贴到key文本框内。
这样就可以直接使用Git和GitHub了。
Note:建议在Git Bash中输入“ssh -v [email protected]”测试能够正常连接github
安装Ruby环境
下载RubyInstaller和DevKit。
因为Octopress需要的Ruby版本为1.9.2,所以选rubyinstaller-1.9.2-p290.exe,DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe。
先安装RubyInstaller,然后解压缩DevKit(路径中不能有中文)。
在“Start Command Prompt with Ruby”命令行中进入DevKit解压缩的目录,然后运行以下命令:
ruby dk.rb init
ruby dk.rb install
gem install rdiscount --platform=ruby
如果安装成功,就可以使用一些Ruby的工具了,也为后面搭建博客提供了基础环境。
安装Octopress
先通过Git从Github上克隆一份Octopress(在Git Bash上输入命令)
git clone git://github.com/imathis/octopress.git octopress
然后安装一些依赖的工具(后面都是在Start Command Prompt with Ruby中输入)
cd octopress
ruby --version # Should report Ruby 1.9.2
gem install bundler
bundle install
安装Octopress默认的Theme
rake install
配置Octopress
将octopress的文件夹下的_config.yml的编码改成UTF-8:
保存(或另存为)时选择编码格式为UTF-8
修改_config.yml,批改url、title、subtitle、author等等。
到Ruby的安装目次\lib\ruby\gems\1.9.1\gems\jekyll-0.11.2\lib\jekyll\找到convertible.rb这个文件,批改self.content
= File.read(File.join(base, name))为self.content = File.read(File.join(base,
name), :encoding =>"utf-8")。
写博文
最简单的方式:复制octopress\source\_posts下某个文件,例如2012-07-30-the-first-post.markdown,修改文件名和文件中的内容
或者,命令行中输入rake
new_post["title"],会创建一个新的Post,新文件在source/_post下,文件名如下面的格式:2012-07-31-title.markdown。该文件可以直接打开修改。
写文章时,可以使用Markdown和Octopress
Plugins等工具对内容进行格式排版。
预览效果
在修改设置或者写完文章后,想看看具体效果,可以通过如下命令来完成:
rake generate
rake preview
将博客部署到Github上
在预览的效果符合自己的预期后,就可以通过如下命令将内容部署到Github上了。
如果是第一次部署,需要在Github上创建一个username.github.com的repository
在github网站选择“Create a New Repo”,如图
填写对应的内容即可
note:Repository
name填写username.github.com,username一定要和github的username一致,建好的博客代表的是你这个github账户的主页即page
配置octopress与github的连接:
进入Octopress目录:
rake setup_github_pages
按照提示填入你的github项目网址,比如:
[email protected]:Username/yourname.github.com.git
note:可以按照上面的修改,也可以在github的项目页中找地址
分发到github上:
rake deploy
第一次运行时,会询问是否建立对github的授权,输入:yes。然后将站点更新的内容推送到github上。
补充一点:
最后的但并不是最重要的,我们需要将修改的日志同步到github上,因此下面的3个命令也是必须的。
git status
git add .
git commit -m 'your message'
git push origin source
大功告成!
签名相关的命令:
•$security find-identity -v -p codesigning -- 列出钥匙串里可签名的证书
•$security cms -D -i embedded.mobileprovision -- 查看描述文件
•$codesign–fs “证书串” 文件名 -- 强制替换签名
重签步骤:
1.删除插件和带有插件的.app包(比如Watch)
2.对Frameworks里面的库进行重签名
3.给可执行文件 +x(可执行)权限
4.替换描述文件
5.替换BundleID
6.通过授权文件(Entilements)重签.app包
实际操作:
获取破壳的ipa包
获取第三方ipa包
查看ipa包是否已经破壳 》 非上架的都没加壳,无需关注
解压ipa包,进入playload文件夹,找到MachO文件
在终端使用命令otool -l DingTalk | grep crypt,0是已脱壳,大于0是未脱壳(一
般为1)
终端查看本地有效证书
$security find-identity -v -p codesigning
删除无法签名的插件文件
删除Plugins文件夹和Watch文件夹
对.app文件夹内的Frameworks文件夹中的每一个framework强制重签名
命令:$ codesign -fs "iPhone Developer: xxx " xxx.framework
找到framework文件夹下所有.framework,分别使用上面的命令对其签名。
建议通过脚本命令执行:
将要签名的描述文件该成 embedded.mobileprovision 替换 来的 embedded.mobileprovision
创建entitlements.plist文件
查看描述文件内容,使用命令security cms -D -I embedded.mobileprovision,找到Entitlements节点,接着创建entitlements.plist文件,内容拷贝过去,最后把entitlements.plist文件拷贝到playload文件夹内(与xx.app同级)。
!]( https://upload-images.jianshu.io/upload_images/1502585-e1694c8e1e77a197.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 )
修改xx.app包里面的info.plist中的bundleId为上面项目的bundleId
对xx.app开始签名
使用的命令: zip –ry 输出文件 输入文件 命令。也可以手动压缩。
将上述操作 通过shell命令 写个脚本文件。然后一键操作。
shell脚本语言命令
地址: https://github.com/InjoyDeng/ResignTool
蒲公英平台重签名
本文章主要介绍iOS 版本发布的两个相关功能。
一 : iOS 开发出的版本发布安装 用两种方式 :
软件环境
Mac: v10.12.6 (16G29)
ruby: v2.3.4
rvm: v1.29.3
sigh: v2.71.1
Xcode: v9.2
使用sigh脚本
使用之前先安装一下脚本环境
应用场景:
主要解决因重复打包导致测试同学回归测试的包和上传App Store的包不一致的问题。以及 合作方之间 证书不一致,需要重新签名问题。
App开发测试流程
对回归测试通过的ipa包进行重新签名,然后上传 App Store
输入的 Signing Identity 如果和 .mobileprovision文件 不一致,那么终端上仍会提示resign成功,但是,安装时会报错!
codesign -vv -d xxx.app
本文主要讲述sigh命令的安装和使用。
首先确保你安装了Xcode的命令行工具。
然后通过gem安装sigh,gem的安装请自行谷歌。
在终端执行
依次执行下列步骤:
关于更多sigh用法请访问 sigh使用
签名成功的应用就可以顺利在我们的设备中安装了并使用了,用这个方法可以进行非越狱平台安装在正版基础移植的越狱应用。
工具: https://github.com/InjoyDeng/ResignTool
借鉴: https://www.jianshu.com/p/d68924e1af25
https://www.jianshu.com/p/d68924e1af25
https://www.cnblogs.com/guohai-stronger/p/11781249.html
iOS APP签名机制详解
1、用Xcode新建一个工程Bundle identifier不要和手机中已有的的APP重复,然后用自己的证书打包出ipa文件。
2、获取mobileprovision文件先将一中(用自己证书打包的)ipa包进行解压。选中ipa包,右键 ->打开方式 ->解压,解压ipa解压完之后会生成一个Payload文件夹,点进去在文件上右键 ->显示包内容。mobileprovision文件将图中标记的文件拷贝到桌面(或者其他地方)后面要用。以下第三、四、五步中如果之前已经安装过可以跳过。
3、安装Homebrew在终端先后执行下面2命令行安装,等待进度完毕 xcode-select --installruby
4、安装ruby在终端执行下面命令安装ruby,等待进度完毕(输完密码可能在较短时间无反应) brew install ruby
5、安装sigh脚本执行下面安装命令 sudo gem install sigh
6、若出现以下报错:ERROR: While executing gem ... (Errno::EPERM)
7、Operation not permitted - /usr/bin/rougify
8、则安装命令修改为 sudo gem install -n /usr/local/bin sigh
9、使用sigh脚本开始重新签名1、在终端输入sigh resign,回车2、把要签名的ipa文件(路径、包名不要有中文)拖到终端窗口上,回车3、填写用来签名的证书(第一步中的证书)名回车
10、证书名称:在钥匙串的证书上右键->显示简介4、把项目的配置文件.mobileprovision文件(第二步中的文件)拖到终端窗口上,回车 5、好了,resign脚本会自动更改bundel id,签名并重新打包。 完成后提示Successfully signed,新生成的包会自动替换原有文件。
11、安装重签名后的ipa文件
12、最新的iTunes已经不能给iPhone安装APP了,所以我们可以使用各种助手或者iTools进行安装。
13、以上就是使用个人开发者账号上架苹果ipa的方法,同时需要个人开发者账号和iOS企业签名可以咨询微导流平台!