我在AWS EC2实例上运行了一个应用,上次更新时出现了问题。我通常ssh
到EC2服务器并执行git pull
,我有一个远程存储库。
如何从主存储库进行全新安装?
每次我做一个git pull我得到you need to resolve your current index first
我能做一个
吗?git reset --hard HEAD
git pull
来自EC2实例上的远程仓库?
答案 0 :(得分:0)
我肯定会在非生产环境中首先对此进行测试,但是,是git reset
后面跟git pull
进行操作会很有效。
根据documentation,git reset --hard HEAD
,确实:
重置索引和工作树。之后对工作树中跟踪文件的任何更改都将被丢弃。
然后git pull
将从遥控器中提取最新更改并将其应用到您的EC2实例(href overrides ng-click in Angular.js):
将来自远程存储库的更改合并到当前分支
所以,是的,如果您运行git reset --hard HEAD
然后git pull
,您将清除所有本地未跟踪的更改,然后从遥控器获取最新信息。事实上,如果您的EC2已经撤消了最近的提交,那么您根本不需要git pull
。
然而,再说一遍,压力不足:如果这是一个生产服务器,请首先调查未经修改的更改,以确保没有任何重要的事情让您后悔失去({ {1}}和git status
会这样做,然后在一台单独的非生产机器上尝试命令。