我现在有个文件是a.js 但是本电脑上的a.js不是最新版,我想把他更新为最新版(不和我的这个版本合并,想得到纯粹的最新版)
我现在有个文件是a.js 但是本电脑上的a.js不是最新版,我想把他更新为最新版(不和我的这个版本合并,想得到纯粹的最新版)
跟PhpStorm没啥关系,就是git基础操作。
本地删掉a文件,再把远程的pull下来。
删a.jsrm -rf a.js
更新本地git add .
git commit -m "deleted a.js"
合并远程git fetch
git checkout origin/master a.js
origin是远程名
master是远程分支
5 回答2.8k 阅读
3 回答2.6k 阅读
3 回答964 阅读
我来给个靠谱的答案吧,采纳答案也没有错只不过不太切题,既没有针对特定文件操作,也没有使用 IDE。
由于我没有 PHP Storm,所以用它的大哥 IntelliJ IDEA 来举例。
其实你没有必要删除本地文件再去获取最新版本,你要做的是:“通过历史记录更新指定文件的任意版本”,这其中当然也包括最新版本。那么有一个前提是你已经获取了最新的历史记录,也就是
git fetch
,对应的 IDE 操作是:接着我们来看如何对指定文件进行版本更新。
第一步,查看目标文件历史记录
第二步,找到你要的版本(无论是新版本还是旧版本都一样)
最后,使用 Get 菜单项获取指定版本,其对应的命令是
git checkout
如上所述,IDE 里的集成操作还是很方便的,胜过命令行的方面就是图形化指示相当清晰。但是——命令行更快,更灵活,只要你脑子够清楚,还是命令行的效率更高一筹。
其实若流程顺畅,一半是较少针对特定文件去获取特定版本的。多数情况下我们都是
git pull
-> 干活 -> commit -> 干活 -> commit ... ->git pull
(maybe 解决冲突) ->git push
,每一次你git pull
的时候,都等于拿到了所有文件的最新版本(等价于git fetch
+git merge/rebase
),所以上述操作往往都是为了回退版本而不是拿到最新版本,除非你就是不想要所有版本都更新,那么我这个答案就是你需要的。