1、git强制更新并覆盖本地修改
git fetch --all
git reset --hard origin/分支名
git pull
git fetch 只是下载远程的库的内容,不做任何的合并 git reset 把HEAD指向刚刚下载的最新的版本
2、git 如何恢复到指定版本
1、查看git的提交版本和id 拿到需要恢复的版本号
git log
2.、恢复到指定版本
git reset --hard d7af308745fa442d8879d36f1af289700cefaf86
3、强制push,推送到你要push的分支
git push -f origin 分支名
3、git 分支操作
查看本地分支:git branch
查看全部分支:git branch -a
创建分支:git branch 分支名
创建分支同步到远端(如果远端没有会创建分支,如果有同名会关联) git push --set-upstream origin 分支名
切换分支:git checkout 分支名
创建+切换分支:git checkout -b 分支名
把历史版本作为新分支 git checkout -b 分支名 版本号
合并某分支到当前分支:git merge 分支名
删除本地分支 git branch -D 分支名(如果该分支没有合并到主分支会报错,可以用以下命令强制删除git branch -D 分支名)
删除本地分支后同步到远程git push origin :分支名
删除远程分支git push origin --delete 分支名
合并分支 git merge 分支名 (把XXX合并到单前分支)
当前分支test: git merge -X theirs xxx (进行合并的时候以xxx内容为准)
当前分支test: git merge -s ours xxx(进行合并的时候以test内容为准)
*********一个分支完全覆盖另一个分支(不友好)****
当前分支使用命令:git reset --hard origin/XXX (当前分支内容成为XXX分支)
然后强推命令:git push -f
****************合并某一分支到线上分支 (友好)***********************
当前分支test: git merge -X theirs xxx (进行合并的时候以xxx内容为准)
当前分支test: git merge -s ours xxx(进行合并的时候以test内容为准)
4、git暂存和恢复
多人开发,经常遇到开发某一个分支时,需要处理其他事情,这时就可以暂存手头的工作,进行其他工作,结束之后再恢复
暂存操作 git stash
暂存操作及标识 git stash save '本次暂存的标识名字'
查看暂存记录 git stash list
恢复到上次暂存工作 git stash pop
恢复指定的暂存工作 git stash pop stash@{版本号}
删除某个暂存, 暂存记录保存在list内,需要通过list版本号取出恢复 git stash drop stash@{版本号}
删除全部暂存 git stash clear
5、删除本地文件夹的git
rm -rf .git 删除本地的git文件夹
****************git取消文件跟踪(指已经添加到git,然后在 .gitignore 中添加不起作用,继续追踪时使用)***********************
git rm -r --cached XXX //取消跟踪文件XXX,不删除本地文件
git rm -r --cached XXX/ //取消跟踪文件夹XXX,不删除本地文件
git rm -r --f XXX //取消跟踪文件XXX,删除本地文件
6、查看当前仓库地址以及设置新的仓库地址
1、查看当前仓库地址(3种都可以)
git remote show origin
git remote -v
git remote -version
2、修改仓库地址
git remote set-url origin XXX //修改为新的仓库地址(XXX为新的仓库地址)
如有错误欢迎指正