SAE近期的優化,目前已經支持Git,本文將介紹如何使用Git在SAE上部署代碼。
使用Git進行代碼管理,首先要在本地安裝Git客戶端,下載鏈接:http://www.git-scm.com/download/
Git客戶端的安裝與配置過程在此略去不講,谷歌一下可以找到許多相關的內容,文章重點介紹如何使用Git在SAE上部署代碼。
本文例子中使用的操作系統為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應替換為正確的你自己的應用名稱
按照提示輸入安全郵箱和密碼,執行成功后,提示檢出內容為空。
注:上面標紅的信息是指你 sae的信息

保存Git用戶名和密碼:
實現辦法(win環境):
a、1. 在Windows中添加一個HOME系統環境變量,值為%USERPROFILE%
b、在“開始》運行”中打開%Home%,新建一個名為“_netrc”的文件。
c、添加如下內容,可以避免每次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 'origin/1'.
執行完畢后,即切換至分支1。
4. 新增和刪除代碼版本
當前位於分支1,執行下面的語句可以創建分支版本(例如版本2):
git branch 2
git push sae 2
執行如下命令,可以列出所有版本
git branch -a

從SAE服務器上刪除版本2的代碼。
git push sae :2

已經在SAE中指定為默認版本時,禁止刪除。

提示錯誤信息: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,開發者需要自行添加這個文件。
原文鏈接:http://bookshadow.com/weblog/2015/09/10/sae-git-introduction/
我對本文中部分內容進行補充
