当前,每当我对某些代码进行更改时,我都会在终端中执行以下操作:
git init
git add .
git commit -m "Some changes"
git push heroku master
我不确定100%,但这似乎是在重新部署整个项目并重新安装所有软件包。如果是这样,是否有办法只推送所做的更改?
例如,如果我更改一行代码,我只想将更改的内容推送到那个文件,而不是整个项目。
答案 0 :(得分:1)
git init仅在您每次进行更改后才运行一次
git添加。 (添加所有更改)
git commit -m“提交”
git push origin master
答案 1 :(得分:1)
这取决于您打包应用程序的方式,例如与webpack.config
。通常,您每次都将整个项目打包并部署到服务器。这是正确的方法(而不仅仅是尝试替换一个文件),这样您就可以执行项目范围内的操作,例如减少代码,处理CSS等。服务器不会下载/安装已经存在的外部软件包除非您在package.json
文件中指定其他版本,否则请在此处进行操作。
答案 2 :(得分:1)
这是因为在Heroku正确部署它之前,react必须做一些魔术。魔术包括安装节点模块,编译所有源文件,然后优化所有内容,然后输出包含所有内容的build文件夹。在您更改的一个文件中的一行与生成输出之间没有1:1的关系-react需要重新生成。