今天从简单的flask开始完成Flask web开发的学习。今天学习了Git和GitHub项目的提交。
Git尝试提交过程中出现了"Could not read from remote repository.Please make sure you have the correct access rights."报错,是在Git clone GitHub仓库时出现的。
上网找了下原因,是没有在github上添加ssh?明明昨天已经加上了刚建的ssh密钥的。不晓得具体什么情况,先按照方案解决吧。
首先在Git终端中输入:$ ssh-keygen -t rsa -C"usename"
生成新的密钥,因为我已设置了保存地址,所以无需再次设置地址了。
注意:这里生成了私有密钥和公共ssh两种,我们只需要取到公共ssh即可。
生成案例如下
Your identification has been saved in /c/Users/Administrator/.ssh/id_rsa. Your public key has been saved in /c/Users/Administrator/.ssh/id_rsa.pub. The key fingerprint is: SHA256:JOPHRJbINYzKWsrJONOgyOBKVFg0Y1zc8mZdnRdzNSo diondigi The key's randomart image is: +---[RSA 2048]----+ | =*oo.==. . .+=| | ..ooo++o. . o..+| | .. .= + .E .. | |o. +. X . . | |B* = + S | |*+B . | |oo | |. | | | +----[SHA256]-----+
然后继续在终端中输入:
$ cat /c/Users/Administrator/.ssh/id_rsa.pub
通过自己的密钥保存路径查看生成的公共密钥内容
之后检查下当前Git与github的连接状态,输入:
$ git remote -v origin https://github.com/username/profile.git (fetch) origin https://github.com/username/profile.git (push)
之后我尝试clone github仓库,结果报错,查了下报错原因,是不能复制空仓库,原来是我还没有提交任何的文件上去。输入如下:
$ git clone git@github.com:username/profile.git Cloning into 'profile'... warning: You appear to have cloned an empty repository.
总之先提交下文件吧,上传到github试试。先在本机git可以管理的仓库目录找本地文件(具体如何设置本机git管理仓库可以参阅http://www.cnblogs.com/tugenhua0707/p/4050072.html):
$ cat hello.py
提交文件时报错,原来还需要登陆下GitHub账号,下面是报错
*** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
登录完成,将文件提交到暂存区:
$ git add hello.py
然后用命令 git commit告诉Git,把文件提交到仓库
$ git commit -m "add hello.py"
最后推送到远程仓库
$ git push origin master Counting objects: 5, done. Delta compression using up to 4 threads. Compressing objects: 100% (4/4), done. Writing objects: 100% (5/5), 629 bytes | 314.00 KiB/s, done. Total 5 (delta 0), reused 0 (delta 0) To https://github.com/username/profile.git * [new branch] master -> master
这就是提交成功了,刷新下自己的GitHub仓库,出现了提交的文件。可喜可贺~!
注意:打开git终端后,查看是否已经登录可以输入
一般配置 git --version //查看git的版本信息 git config --global user.name //获取当前登录的用户 git config --global user.email //获取当前登录用户的邮箱 登录git /* 如果刚没有获取到用户配置,则只能拉取代码,不能修改 要是使用git,你要告诉git是谁在使用*/ git config --global user.name 'userName' //设置git账户,userName为你的git账号, git config --global user.email 'email'
如果有用户信息则说明之前配置已经保存了。
继续,要先cd到自己的git仓库下才可执行其他操作。要显示出有master权限才可:
如何初始化git仓库?可以用
初始化git仓库
git init //在nodejs文件夹下初始化一个仓库,此时文件里会到一个.git的隐藏文件夹
看其他博文关于git的使用命令介绍很详细,转载一些:
参考文章:http://www.cnblogs.com/pied/archive/2012/04/12/2444159.html
flask web
flask文件就是提交的hello.py,刚开始建立的一个简单交互。用pycharm很简单的建立的。
flask web基础知识点:
1.flask web程序结构:
-a.初始化
-b.路由和视图函数
-c.启动服务器函数:可选择调试模式
2.flask 请求对象:封装了客户端发送的http请求
如何访问请求对象:示例中,在视图函数中把request作为全局变量使用(实际上request不可能是全局变量)。
实例中是为了引出多线程并发的问题。因在多线程并行情况下,每个线程处理请求所接受的request对象必然不同。这时就需要用flask上下文让特定 的变量在一个线程中可全局访问,又不会影响其他线程。
3.flask上下文全局变量:分为请求上下文(包含request与session),程序上下文(包含current_app与g)
处理流程:flask在分发请求前激活上下文变量,请求处理完成后再将其删除。
请求上下文:
-request:请求对象,封装了client发出的 Http request中的内容
-session:用户会话,用于存储请求之间需要保存值的字典,用于保持会话
程序上下文:
-current_app:当前程序激活的程序实例
-g:处理请求时用于临时存储的对象,每次请求到来都会重置该变量
4.请求调度
URL映射是URL与视图函数之间的对应关系。flask使用app.route修饰器或非修饰器形式的app.add_url_rule()生成映射。
5.调试模式
run()
方法是十分适用于启动一个本地开发服务器,但是你需要在修改代码后手动重启服务器。 这样做并不好,Flask 能做得更好。如果启用了调试支持,在代码修改的时候服务器能够自动加载, 并且如果发生错误,它会提供一个有用的调试器。
开启调试模式: 一种是在应用对象上设置标志位:
app.debug = True
app.run()
或者作为 run 的一个参数传入:
app.run(debug=True)
参考文档:http://www.pythondoc.com/flask/quickstart.html