首页 > 解决方案 > 如何在每次提交时自动将服务器上的 git 存储库克隆到另一个文件夹

问题描述

我有一个简单的 express.js 驱动的 API,在带有 pm2 的 ubuntu 服务器上运行。和server.js其他文件在/var/www/node/api/.

在这台服务器上,at/srv/git-repos/api.git/是我的 git 存储库,我从本地机器提交新的更改。

问题是,是否有可能,每次我向服务器提交新更改时,它都会识别出这一点,并克隆我的存储库,让我们说/var/www/node/api-dev/(然后可以在 dev.example.com 上使用,这可以通过 nginx 实现,所以没有问题)并使用 重新启动我的 pm2 实例pm2 restart api

因为那时我会测试,如果我的更改在服务器上有效,当他们这样做时,我可以手动将内容复制/var/www/node/api-dev到。/var/www/node/api

还是有其他更好的工作流程?它只是一个小的 API,我将在上面进行许多更改,因为我想开发它以满足我的前端需求。

感谢您的回答和建议,我希望我想要存档的内容是可以理解的。

标签: node.jsgitexpressubuntu

解决方案


git commit
git clone <repo> ../api-dev
pm2 restart api

将其保存为 c.sh 并使用 ./c.sh 运行或添加到您的 .bashrc


推荐阅读