SAE近期的优化,新增了Git代码托管仓库,本文对新浪云Git代码仓库的使用方法做简要的介绍。
使用Git进行代码管理,首先要在本地安装Git客户端,下载链接:http://www.git-scm.com/download/
Git客户端的安装与配置过程在此略去不讲。
本文例子中使用的操作系统为Windows 8.1,应用语言为Python,应用名称为gitsrc。
0. 代码管理方式的选择
在首次对应用进行代码管理时,有且仅有一次选择代码库管理方式的机会,在此我们选择Git。
创建完成后,可以在页面上看到应用的Git仓库地址:https://git.sinaapp.com/gitsrc/
1. 使用git clone克隆代码仓库
在命令提示符(cmd)下,cd到工作目录(本例为E:\sae),执行命令:
git clone -o sae https://git.sinaapp.com/gitsrc
其中gitsrc应替换为正确的应用名称
保存Git用户名和密码:
在%USERPROFILE%\_netrc文件中
添加如下内容,可以避免每次push时重复输入用户名和密码(未启用动态口令)
machine git.sinaapp.com
login 安全邮箱
password 密码
添加一个Git远程仓库sae,地址为:https://git.sinaapp.com/gitsrc
git remote add sae https://git.sinaapp.com/gitsrc
注:如果在git clone时添加了 -o sae 参数,此步骤可以省略。
2. 首次创建分支(版本1)
在源码目录gitsrc下添加一个文件,例如index.wsgi,然后cd到源码目录下,执行如下指令:
cd gitsrc
git add .
git commit -am "init repo"
git push sae master:1
打印信息如下:
Counting objects: 3, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 371 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://git.sinaapp.com/gitsrc
* [new branch] master -> 1
3. 版本的切换:
SAE Git代码仓库通过分支(Branch)的方式,支持多个并存的代码版本。
使用git checkout命令可以在版本之间进行切换,例如执行命令:
git checkout 1
Switched to branch '1'
Your branch is up-to-date with 'sae/1'.
执行完毕后,即切换至分支1
4. 新增和删除代码版本
当前位于分支1,执行下面的语句可以创建分支版本(例如版本2):
git branch 2
git push sae 2
执行如下命令,可以列出所有版本
从SAE服务器上删除版本2的代码。
提示错误信息:Permission denied: deleting default version is not allowed!
5. 向Git代码库提交代码变更
在gitsrc目录下变更代码文件,例如新增了文件foo.html
依次执行下面的语句,将变更提交至SAE Git代码库(分支版本1):
git add --all
git commit -am "add foo.html"
git push sae 1
对于Python应用,与SVN代码库不同,新增版本时并不会默认生成index.wsgi,开发者需要自行添加这个文件。