向laravel 5进军2
创建第一个laravel项目
首先连接虚拟机:
打开git bash,连接ssh:vagrant up
vagrant ssh
创建项目:composer create-project laravel/laravel Laravel --prefer-dist "5.5.*"
这里的composer作用我就理解成个包管理插件了,类似py里面安装的package manager可以用pip命令一样。(希望大佬指正)
然后在win中打开映射的文件夹Code,看看文件结构
文件结构用途
文件夹名称 | 用途 |
---|---|
app | 应用程序的业务逻辑代码存放文件夹 |
app/Console | 存放自定义 Artisian 命令文件 |
app/Http/Controllers | 存放控制器文件 |
app/Http/Middleware | 存放「中间件」文件 |
bootstrap | 框架启动与自动加载设置相关的文件 |
composer.json | 应用依赖的扩展包 |
composer.lock | 扩展包列表,确保这个应用的副本使用相同版本的扩展包 |
config | 应用程序的配置文件 |
database | 数据库操作相关文件(数据库迁移和数据填充) |
node_modules | 存放 NPM 依赖模块 |
package.json | 应用所需的 NPM 包配置文件 |
phpunit.xml | 测试工具 PHPUnit 的配置文件 |
public | 前端控制器和资源相关文件(图片、JavaScript、CSS) |
readme.md | 项目介绍说明文件 |
resources | 应用资源 |
resources/assets | 未编译的应用资源文件(图片、JavaScript、CSS) |
resources/lang | 多语言文件 |
resources/views | 视图文件 |
routes/api.php | 用于定义 API 类型的路由 |
routes/channels.php | 事件转播注册信息 |
routes/console.php | 用于定义 Artisan 命令 |
routes/web.php | 用于定义 Web 类型的路由(重点,大部分情况下本书会用到) |
server.php | 使用 PHP 内置服务器时的 URL 重写(类似于 Apache 的 “mod_rewrite” ) |
storage | 编译后的视图、基于会话、文件缓存和其它框架生成的文件 |
storage/app | 目录可用于存储应用程序使用的任何文件 |
storage/framework | 目录被用于保存框架生成的文件及缓存 |
storage/logs | 应用程序的日志文件 |
tests | 应用测试相关文件 |
vendor Composer | 依赖模块 |
webpack.mix.js | Laravel 的前端工作流配置文件 |
yarn.lock Yarn | 依赖版本锁定文件 |
.gitignore | 被 Git 所忽略的文件 |
.env | 环境变量配置文件 |
又多又长基本看不懂吧,没关系,需要用的时候一个个学就行了
win下打开
(做完一遍回来看了一下:基本能看懂啦~加油!)
正式学laravel前的最后知识补充
首先,如果你是直接看的这一篇blog或者跳着跳着看到了这里,然后觉得东西太多或者看不怎么懂。。我的建议是这样,因为web学习曲线确实十分陡峭,开始肝laravel需要储备好一些知识:html,css代码要能看懂,最好还知道点bootstrap,js代码能稍微看一看,php的知识要知道基本语法,面向对象能写,学一些内置函数,了解正则表达式(这些东西都在前面的php总结有写)然后网上搜一点资源看一看http协议入门啥的,感觉基本差不多了。因为学习曲线陡峭,所以刚开始肯定会遇到各种各样的不懂得东西,原则大概是尽量看,看不懂能用也行,多做几遍慢慢也就了然于心。虽然我已经尽量记录了每一个步骤,但是由于大家环境稍有差异,尽量要能用搜索引擎解决自己遇到的问题。
言归正传,下面介绍Git和Github,可以说是现代程序员必备技能了
Git和Github
需要掌握的基本知识有:
- 什么是 Git
- 为 Git 做初始化配置
- Git 的基本使用
- 什么是 GitHub
- 如何添加 SSH Key 到 GitHub 上
- 如何新建 GitHub 项目
- 如何提交代码到 GitHub
什么是Git
详细的不讲了,可以看看Git的教程。推荐廖雪峰老师Git教程详细学学也挺快。
Git是一个超强的分布式版本控制系统,最强,没有之一。要当优秀的程序员这个技能真心不能少,不理解的话去看看以上提供教程的简介就get了,我保证是这样。
初始化配置Git
因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址.这里的–global是全局配置,即这台机器上的所有Git仓库全都用的这个参数。push.default simple是把push模式默认为simple,如果使用git push没有指定分支那就默认simple而不是报错。
Git的常用命令
git init //初始化一个git仓库
git add -A //将项目添加到git仓库
git status //查看状态
git commit -m "content" //提交+说明
git log //提交日志
git checkout -b balabala //创建一个balabala分支
git merge balabala //融合balabala分支
git pull //拉仓库下来
git push //上传到远程仓库
Github是什么?
gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub。
将项目托管到Github
注册完github的账号,登陆进去点击自己的头像可以看到settings,有个ssh密钥管理。本地生成密钥文件id_rsa和id_rsa.pub后,将id_sra.pub的内容放到自己Github账号下ssh密钥管理,将内容复制到上面即可
cd ~
cat ~/.ssh/id_rsa.pub
测试一下ssh -T -v git@github.com
第一次连接会提示输入yes和no,输入yes否则是no。
添加完成之后,可在主机上移步想托管的项目文件根目录。用命令:
$ git remote add origin git@github.com:your_username/hello_laravel.git
$ git push -u origin master
项目托管成功(只做到了在主机条件下ssh连接后git push,在Homestead里只能用https上传项目,也不是很懂咋回事)
下面是https上传的方法:
在Homestead中来到项目根目录下,使用命令:
git remote add origin https://username:password@github.com/username/testing.git
git push -u origin master