在本文中,将探讨如何将一个使用ReactJS和TypeScript创建的项目部署到GitHub上。这是一个系列文章的第二部分,第一部分介绍了如何设置ReactJS工作空间。在本文中,将创建一个GitHub公共仓库,并将项目代码推送到该仓库。
首先,如果还没有GitHub账户,需要创建一个。登录到GitHub账户后,可以开始创建一个新的公共仓库。
在GitHub主页上点击“Start a project”按钮,为项目命名并添加描述,然后点击“Create repository”按钮。创建完成后,将看到一个空的仓库页面。
回到电脑上,打开包含ReactJS应用的文件夹。使用以下命令初始化Git仓库:
git init
这个命令将初始化一个默认分支为master的空Git仓库。
接下来,需要将本地代码库与GitHub上的远程仓库连接起来。在Git Bash中输入以下命令:
git remote add origin https://github.com/yourusername/yourrepository
这个命令将添加一个远程仓库的引用到本地Git仓库中。
在将本地文件推送到远程仓库之前,需要选择要提交的文件。在本地工作区中,node_modules文件夹包含了应用所需的所有Node包。所有必需的包及其版本都在package.json文件中列出。理论上,如果只提交package.json文件而不是node_modules文件夹,应该能够正常工作。
为了告诉Git忽略node_modules或dist文件夹,需要创建一个名为.gitignore的文件,并在其中列出文件夹名称。可以在该文件中添加更多的文件或文件夹名称。在Windows中,不能直接创建.gitignore文件,因为Windows会认为这是一个没有名称的文件。可以使用VS Code或Git Bash中的以下命令来创建这个文件:
touch .gitignore
现在,可以使用以下命令将所有更改的文件/文件夹(排除那些被忽略的)选择为提交:
git add .
提交选定的文件:
git commit -m "commit message"
现在,文件已经提交到本地仓库,是时候将更改推送到GitHub上的远程仓库了。已经将本地仓库与GitHub上的远程仓库链接起来了。推送本地更改到远程仓库的命令是:
git push origin master
这里,请求Git将本地仓库及其提交和历史推送到名为origin的远程仓库和名为master的分支。
到目前为止,index.html页面是直接从文件系统提供的,但Web应用程序不能在文件系统上运行。至少在开发过程中,需要一个本地开发服务器。有很多选择,但将在这里使用webpack-dev-server。当然可以选择最适合需求的服务器。
在Git Bash中创建一个名为webpack-dev-server的新分支并检出该分支:
git checkout -b webpack-dev-server
现在工作分支是webpack-dev-server而不是master。
在Git Bash或VS Code终端中执行以下命令,这将安装webpack-dev-server作为开发依赖:
npm install --save-dev webpack-dev-server
在package.json文件中,更新scripts -> build节点从“webpack”到“webpack-dev-server”。
更新后的package.json文件将如下所示:
{
"name": "react-typescript",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "webpack-dev-server"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {
"ts-loader": "^2.3.7",
"typescript": "^2.5.3",
"webpack": "^3.6.0",
"webpack-dev-server": "^2.9.3"
},
"dependencies": {
"react": "^16.0.0",
"react-dom": "^16.0.0"
}
}
执行以下命令,这将在http://localhost:8080/上启动webpack dev server:
npm run build
要通过开发服务器执行应用程序,请导航到localhost:8080。