1、远程仓库中有的文件,但是本地要给删除掉,如何同步
git ls-files //查看暂存区是否有该文件,以readme.md为例
git rm -r --cached readme.md //删除暂存区该文件
git commit -m update //更新
git push origin master //推送到远程仓库
2、git回滚操作
git checkout -- <filename>
git checkout -- test.js
/*丢弃test.js中和暂存区不同的内容,回到暂存区的状态
* 如果文件没在暂存区,就没效果
**/
git reset
1、hello.js文件在暂存区
git reset HEAD //从暂存区删除该文件
或
git reset HEAD hello.js
2、hello.js已经commit
git reset --hard 09abdea //回退到指定的HEADID,该HEAD指针之后的文件都会被删除
git reset --hard //回退到指定的commit,之后的文件都会被删除掉
git reset --hard tag //回退到指定的tag绑定的commit记录
git reset --soft <> //保留工作区的记录,暂存区的版本回退到指定的位置,可以通过git diff --cached对比工作区和暂存区的区别
git clean
git clean -df //删除未被tracked的文件,即未在暂存区的文件
git restore
//hello.js
git restore hello.js //hello.js被tracked情况下,撤销修改,且修改的内容没有add
//和git checkout -- hello.js 及 git reset --hard HEAD效果一致
git restore --staged hello.js //保留工作区的修改,将文件从暂存区移除