1-1. 创建github库
创建github库能够上传自己写的源代码哩
-
添加ssh keys
在Github
Settings
中找到SSH and GPG keys
,单击New SSH key
,复制公钥文件id_rsa.pub
中的内容 -
测试ssh连接
在
Git Bash
中执行$ ssh -T git@github.com
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
表示连接成功。
1-2. git clone
将刚才创建的github项目克隆到本地
cd /G/Python/flask/
git clone https://github.com/YGYtl/flask-vuejs-Graceblog.git
1-3. 分支管理
创建分支管理是为了将修改记录的整体流程分叉保存。分叉后的分支不受其他分支的影响,所以在同一个数据库里可以同时进行多个修改。
git checkout -b dev //创建dev分支
git branch //查看分支
2-1. 配置 Flask
这个web项目的后端是基于flask的,所以需要在back-end后端目录中安装flask。
-
装python3
-
使用
命令窗口
,在文件夹flask-vuejs-Graceblog
中创建目录back-end(文件夹),这是后端API应用
所在的位置 -
在back-end文件夹中,直接建立虚拟环境文件夹,同时生成虚拟环境 ,接着安装flask。
G:\flask-vuejs-Graceblog\back-end>python -m venv venv //建立虚拟环境文件夹,同时生成虚拟环境 G:\flask-vuejs-Graceblog\back-end>venv\Scripts\activate //通过\venv\Scripts\activate命令进入虚拟环境 (venv) G:\flask-vuejs-Graceblog\back-end>pip install flask //安装flask (venv) G:\flask-vuejs-Graceblog\back-end>pip freeze > requirements.txt //迁移模块 (venv) G:\flask-vuejs-Graceblog\back-end>pip install python-dotenv //加载读取环境变量信息的包 (venv) G:\flask-vuejs-Graceblog\back-end>pip freeze > requirements.txt //迁移模块
-
在back-end文件夹中创建.gitignore文件:
.idea/ __pycache__/ venv/ .env app.db yourblog.log*
2-2. 应用工厂
-
先在back-end文件夹下创建app文件夹,之后在app文件夹下创建__init__.py,创建Flask应用,代码如下:
from flask import Flask from config import Config def create_app(config_class=Config): app = Flask(__name__) app.config.from_object(config_class) #注册blueprint from app.api import bp as api_bp app.register_blueprint(api_bp, url_prefix='/api') return app
2-3. API蓝图
- 在app文件夹下创建api文件夹,新建__init__.py
from flask import Blueprint
bp = Blueprint('api', __name__)
# 写在最后防止循环导入,ping.py文件也会导入 bp
from app.api import ping
- 定义路由函数,在api文件夹下新建ping.py(客户端请求访问/ping时,响应并返回Pong!)
from flask import jsonify
from app.api import bp
@bp.route('/ping', methods=['GET'])
def ping():
'''前端Vue.js用来测试与后端Flask API的连通性'''
return jsonify('Pong!')
2-4. 应用启动文件
在back-end文件夹下新建Graceblog.py
from app import create_app
app = create_app()
2-5. 配置文件
-
在back-end文件夹下新建config.py
import os from dotenv import load_dotenv basedir = os.path.abspath(os.path.dirname(__file__)) load_dotenv(os.path.join(basedir, '.env'), encoding='utf-8') class Config(object): pass
-
在back-end文件夹下新建.env
FLASK_APP=Graceblog.py FLASK_DEBUG=1
2-6. 启动应用
(venv) G:\flask-vuejs-Graceblog\back-end>flask run
尝试访问http://127.0.0.1:5000/api/ping
2-7. git的一些操作
举个栗子:
1、git branch显示*master,目前在master下
2、git checkout -b dev //新建并切换到dev分支下
3、git branch显示*dev,表示当前分支为dev
4、在dev分支下,加入要上传的文件为test.py
git add test.py
git commit -m "dev分支的提交"
5、git log --pretty=online //会显示dev分支的提交
6、dev分支完成,切换到master分支下
git checkout master
7、将master分支与dev分支合并
git merge dev
8、删除dev分支
git branch -D dev
9、将本地master分支上传到github仓库的master分支上
git push or git push -u origin master
git branch 分支名 // 新建分支
git branch // 查看当前所有分支
git checkout 分支名 // 检出分支
git checkout -b 分支名 // 创建并切换分支
git checkout commitId 文件名(文件路径下的文件名) 还原这个文件到对应的commitId的版本
git branch -v // 查看分支以及提交hash值和commit信息
git merge 分支名 // 把该分支的内容合并到现有分支上
git branch -d 分支名 // 删除分支
git branch -D 分支名 // 强制删除 若没有其他分支合并就删除 d会提示 D不会
git branch -m 旧分支名 新分支名 // 修改分支名
git branch -M 旧分支名 新分支名 // 修改分支名 M强制修改 若与其他分支有冲突也会创建(慎用)
git branch -r // 列出远程分支(远程所有分支名)
git branch -a // 查看远程分支(列出远程分支以及本地分支名)
git fetch // 更新remote索引
git push -u origin 分支名