从 GIT 在 AWS EC2 上进行全新安装
Clean install on AWS EC2 from GIT
我在 AWS EC2 实例上有一个应用程序 运行,但在上次更新时出现了问题。我通常 ssh
到 EC2 服务器并执行 git pull
,我有一个远程存储库。
如何从我的主存储库进行全新安装?
每次我做 git 拉我得到 you need to resolve your current index first
我可以做一个
git reset --hard HEAD
git pull
来自 EC2 实例上的远程存储库?
我肯定会 首先在非生产环境中测试它,但是,是的,硬 git reset
然后 git pull
就可以了。
根据 documentation、git reset --hard HEAD
,确实:
Resets the index and working tree. Any changes to tracked files in the working tree since are discarded.
然后 git pull
将从您的远程中提取最新的更改并将它们应用到您的 EC2 实例 (documentation):
Incorporates changes from a remote repository into the current branch
所以是的,如果您 运行 git reset --hard HEAD
然后 git pull
,您将清除所有本地未跟踪的更改,然后从远程获取最新的更改。事实上,如果您的 EC2 已经提取了最近的提交,您根本不需要 git pull
。
然而,再次强调:如果这是一个生产服务器,请首先调查未跟踪的更改,以确保没有任何重要的东西让您后悔丢失(git status
并且 git diff
会执行),然后在单独的非生产机器上尝试该命令,以确保万无一失。
我在 AWS EC2 实例上有一个应用程序 运行,但在上次更新时出现了问题。我通常 ssh
到 EC2 服务器并执行 git pull
,我有一个远程存储库。
如何从我的主存储库进行全新安装?
每次我做 git 拉我得到 you need to resolve your current index first
我可以做一个
git reset --hard HEAD
git pull
来自 EC2 实例上的远程存储库?
我肯定会 首先在非生产环境中测试它,但是,是的,硬 git reset
然后 git pull
就可以了。
根据 documentation、git reset --hard HEAD
,确实:
Resets the index and working tree. Any changes to tracked files in the working tree since are discarded.
然后 git pull
将从您的远程中提取最新的更改并将它们应用到您的 EC2 实例 (documentation):
Incorporates changes from a remote repository into the current branch
所以是的,如果您 运行 git reset --hard HEAD
然后 git pull
,您将清除所有本地未跟踪的更改,然后从远程获取最新的更改。事实上,如果您的 EC2 已经提取了最近的提交,您根本不需要 git pull
。
然而,再次强调:如果这是一个生产服务器,请首先调查未跟踪的更改,以确保没有任何重要的东西让您后悔丢失(git status
并且 git diff
会执行),然后在单独的非生产机器上尝试该命令,以确保万无一失。