個人第一個python web開發框架(23)——代碼版本控制管理與接口文檔

  書接上一回,小白和老菜聊到代碼的版本控制和接口文檔php

  小白:爲何要作版本控制,我不弄版本控制不也完成了項目了嗎?要作版本控制不是很麻煩,又要安裝服務又要提交代碼,代碼又不是多人用開發,還要寫文檔......html

  老菜:這就是你這些小白的思惟,只看眼前不思長遠。對於任何一個項目,你都不可能絕對的說它永遠都是一個小項目;而項目完成後,同時也面臨着不停的變動與修改,你不可能永遠記得這個項目任何細節,隨着時間的流逝,不少關鍵點與細節在你的記憶中就會變得愈來愈模糊,到時要從新修改時你就頭大了。我以前有位同事,一開始也是這樣想,沒文檔沒代碼版本管理,而軟件的功能相對也比較複雜,項目完成上線幾個月後,想要大改時做爲開發人員卻沒法動手,本身都看不懂本身寫的代碼了。另外,有可能你寫了一些功能,進行修改後想要回滾時卻發現沒有舊版本,只能重寫。python

  養成良好的文檔編寫習慣,對於一個程序員來講也是很是重要的,你不可能永遠呆在只有一個開發人員的公司裏,在與人合做時,特別是先後端開發人員配合時,若是沒有文檔交流起來是一件很是麻煩的事情,人越多浪費在溝通的時間就越多。並且隨着項目開發時間越長,接口越多,項目維護起來也會越複雜。沒有清晰的文檔,會給項目的增長各類不該該出現的不穩定性。何況寫一個接口文檔也就一兩分鐘的事情,舉手之勞,何樂而不爲呢?mysql

  養成良好的代碼管理與文檔編寫習慣,對於一位程序員素質修養來講,也是很是必要的,一樣兩位水平至關的程序員去面試,代碼編寫規範,懂得代碼管理和熟練編寫文檔的確定佔優。nginx

  代碼版本控制你們經常使用的有git或svn,對於能開源的代碼來講,直接放在github上就能夠了,其餘的話,就須要本身搭建svn服務器。(python服務器環境搭建(2)——安裝相關軟件 與 python服務器環境搭建(3)——參數配置 有svn服務器建立與發佈的說明)c++

  而接口文檔管理,也有很多開源的系統存在,好比wiki、shodoc等系統。git

  小白:好的,我回去安裝配置一下,儘可能讓本身規範起來。程序員

 

  小白回去家後,就開始忙碌了起來,以前已安裝好虛擬服務器了,因此能夠按網上教程直接配置svn。github

  配置SVNweb

  進入svn管理目錄:cd /data/svn

  建立svn項:svnadmin create simple

  進入剛建立的svn項:cd /data/svn/simple/conf

  修改/data/svn/simple/conf文件夾下的配置文件

  將authz文件替換成下面內容:

[simple:/]

admin = rw

  simple是svn當前倉庫項的模塊名稱,每一個svn的這個名稱都是惟一的,否則可能沒法登陸使用,admin是咱們建立的svn登陸帳號

  將password文件替換成下面內容:

[users]
admin = 123456

  這裏設置帳號對應的密碼

  將svnserve.conf文件替換成下面內容:

[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

  若是你的svn服務未啓動,能夠輸入下面命令:/usr/bin/svnserve -d -r /data/svn (有時連不上,kill掉svn進程從新啓動就能夠了)

  svn服務器端的操做就完成了。

 

  下面來進行本地操做截圖:(能夠下載TortoiseSVN-1.9.4.27285-x64-svn-1.9.4.msi進行使用)

  

  安裝完svn客戶端工具後,右鍵菜單會出現SVN Checkout項,能夠進行檢出svn

  

  輸入虛擬服務器地址,點擊OK進行檢出操做

  

  輸入前面設置好的帳號與密碼,完成檢出操做

  而後將源碼放到該文件夾中(或者直接檢出到你的源碼文件夾也行)

  

  在剛檢出的源碼文件夾中點擊右鍵,選擇提交代碼

  

  全選全部文件,並填寫好說明(在作源碼版本控制管理時,最好養成編寫說明的習慣,方便之後有問題時進行查詢,否則版本多時要一個個對比查找是一件很是麻煩的事情)

  

  整個SVN源碼管理就操做完成了。

 

  安裝ShowDoc接口文檔管理系統

  showdoc接口文檔是PHP開發的,因此須要安裝php環境

  php環境你們能夠直接使用官方的安裝方法,直接使用yum進行安裝,方法也比較簡單:https://www.showdoc.cc/php?page_id=14595

  固然也可使用下面編譯方式進行安裝,我在CentOS7.0使用下面編譯方式安裝時會遇到 --enable-opcache=no 問題,估計是操做系統版本與php兼容問題引發的,得升級系統,或使用官方方法安裝就好

 

  安裝PHP相關包

yum install -y libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel autoconf gcc gcc-c++

  進入源碼包存儲路徑(cd /usr/local/src/),並下載相關源碼安裝包

cd /usr/local/src/
wget http://cn2.php.net/distributions/php-5.6.36.tar.gz
wget https://jaist.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
wget https://jaist.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz
wget https://jaist.dl.sourceforge.net/project/mcrypt/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz

  編譯安裝libmcrypt

cd /usr/local/src/
tar -zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure --prefix=/usr/local/related/libmcrypt
make && make install

  編譯安裝mhash

cd /usr/local/src/
tar -zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9
./configure --prefix=/usr/local/related/mhash
make && make install

   設置編譯mcrypt所需環境變量(下面命令要一條條執行)

export LD_LIBRARY_PATH=/usr/local/related/libmcrypt/lib:/usr/local/related/mhash/lib
export LDFLAGS="-L/usr/local/related/mhash/lib -I/usr/local/related/mhash/include/"
export CFLAGS="-I/usr/local/related/mhash/include/"

  編譯安裝mcrypt

cd /usr/local/src/
tar -zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8
./configure --prefix=/usr/local/related/mcrypt --with-libmcrypt-prefix=/usr/local/related/libmcrypt
make && make install

  編譯安裝php

cd /usr/local/src/
tar -zxvf php-5.6.36.tar.gz
cd php-5.6.36
./buildconf --force
./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --mandir=/usr/local/php/php/man --with-config-file-path=/usr/local/php/etc --with-mysql-sock=/var/lib/mysql/mysql.sock --with-mcrypt=/usr/include --with-mhash --with-openssl --enable-mysqlnd --with-mysqli=shared,mysqlnd --with-mysql=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --with-gd --with-iconv --with-zlib --enable-zip --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir --with-freetype-dir --enable-opcache --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --without-gdbm --with-mcrypt=/usr/local/related/libmcrypt --disable-fileinfo
make clean && make && make install

  複製相關配置文件與啓動文件

cp php.ini-production /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

  建立運行php用戶和組

groupadd -r php && useradd -r -g php -s /bin/false -d /usr/local/php -M php

  設置PHP日誌目錄和php-fpm的運行進程ID文件(php-fpm.sock)目錄

groupadd -r nginx && useradd -r -g nginx -s /bin/false -M nginx
mkdir -p /var/log/php-fpm/ && mkdir -p /var/run/php-fpm && cd /var/run/ && chown -R nginx:nginx php-fpm

  修改session的目錄配置

mkdir -p /var/lib/php/session
chown -R nginx:nginx /var/lib/php

  設置PHP開機啓動

chmod +x /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on

  啓動php服務

service php-fpm start

 

  shosdoc的安裝能夠根據官方文檔說明(http://www.showdoc.cc/web/#/help?page_id=32238)進行安裝

  登陸https://github.com/star7th/showdoc 下載源碼包

  而後將源碼包上傳到 /data/www/ 目錄並解壓到當前目錄

  添加nginx配置:showdoc.conf

cd /usr/local/nginx/conf/vhost/
vi showdoc.conf

  在vi編輯器中添加下面代碼

server {
    listen      8080;
    charset     utf-8;
    server_name 127.0.0.1;
    root /data/www/showdoc-master;

    location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }

    location / {
                index index.php index.html;
                client_max_body_size    1000m;
    }
    access_log  /data/logs/nginx/showdoc_access.log  main;
}

  重啓nginx:/usr/local/nginx/sbin/nginx -s reload

  在瀏覽器中輸入:http://xxx:8080/ 就能夠訪問showdoc了

  

  點擊OK進行安裝

  

  

  點擊右上角註冊帳號

  

  

  註冊完帳號,就能夠建立項目進行接口文檔管理了

  

  

  

  進入項目後,點擊左上角的+ 建立接口文檔

  

  填寫完標題,點擊插入API接口模板,就有現成的模板模式出來,簡單修改一下一份完整的接口文檔就寫好了,快的話寫一個接口文檔也就不到一分鐘時間。咱們也能夠根據本身的須要建立本身的接口文檔模板。

  

  保存後就能夠看到簡潔又漂亮的接口文檔了

 

版權聲明:本文原創發表於 博客園,做者爲 AllEmpty 本文歡迎轉載,但未經做者贊成必須保留此段聲明,且在文章頁面明顯位置給出原文鏈接,不然視爲侵權。

python開發QQ羣:669058475(本羣已滿)、733466321(能夠加2羣)    做者博客:http://www.cnblogs.com/EmptyFS/

相關文章
相關標籤/搜索