使 Web 服务器中的文件与某个 git 提交匹配



我正在尝试设置我的网络服务器以下载特定版本的网站。 基本上,我在服务器上所需要的只是能够发出一个命令,使文件夹与该提交匹配。

我尝试搜索这个,但似乎有很多关于 git 的信息,以及许多不同的答案。 所以我不确定答案是什么,或者正确的答案是什么。

这就是我发现有效的方法,但它似乎有点复杂。

git fetch origin
git checkout {hash}
git pull

有没有更好的方法? 这是否适用于所有情况(回购状态等)?

澄清一下,我不需要在 Web 服务器上进行任何提交,它只需要接收。

您可以使用

git reset --hard将工作目录置于提交的确切状态。部署版本(通常是自动化的)时,我通常会在服务器上执行以下操作:

git fetch origin
git reset --hard origin/master

这将用刚刚获取的版本覆盖所有跟踪的文件 origin/master .

请注意,这不会删除未跟踪或忽略的文件。如果需要这样做,则需要在之后运行git clean

git clean -xdf

最新更新