##git 操作
- 丢弃本地文件,用服务器上的。
git checkout -- a.txt //丢弃某个文件
git checkout -- . //丢弃全部
- git放弃对当前文件夹的所有文件的修改
git checkout .
如果 git checkout没有作用,就试试
git clean -df
但是只是只删除所有untracked的文件,如果文件已经被tracked, 修改过的文件不会被回退
- 回退版本(用于提交了不改提交的文件,或者上传了极大的文件导致无法push的问题)
git reset --hard id
这里的id 就是你 git log 后,enter寻找你提交的记录的id,也可以是你提交之前的其他人提交的id。
- 合并文件发生冲突的解决办法
$ git commit -a -m'合并文件'
$ git pull origin develop
$ git add status
$ git add static/ // static/ 目录下左右的文件都提交
$ git commit -m '合并冲突'
$ git status
$ git push origin develop
- 报错: “move or remove them before you switch branches.” 解决方法:
git clean -d -fx ""
- 合并分支
//将score_manage分支合并到develop分支
git pull origin develop
git branch
git merge --no-ff -m '合并' score_manage
//没有冲突的话继续下面的步骤
git status
git commit -a -m '用户提交'
git push origin develop
//合并分支遇到冲突后
//git status 解决红色冲突文件
//合并文件重新合并
//用develop 的文件的话将码云的最新提交的该文件复制下来
- 遇到页面黄色乱码报错 :
输入 wq
- 分支增减查看:
查看本地分支:$ git branch
查看远程分支:$ git branch -r
创建本地分支:$ git branch [name] ----注意新分支创建后不会自动切换为当前分支
切换分支:$ git checkout [name]
创建新分支并立即切换到新分支:$ git checkout -b [name]
删除分支:$ git branch -d [name] ---- -d选项只能删除已经参与了合并的分支,对于未有合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项
合并分支:$ git merge [name] ----将名称为[name]的分支与当前分支合并
创建远程分支(本地分支push到远程):$ git push origin [name]
删除远程分支:$ git push origin :heads/[name]
- git 删除本地分支
git branch -D br
- git 删除远程分支
git push origin :br (origin 后面有空格)
- pull的最新代码版本有问题,恢复到之前的某一次push,进项修改
git log 显示最近的提交
git checkout id 切换到某一次提交的版本
- 代码回退
$ git merge --abort
错误类型:
Git Pull Failed
error: You have not concluded your merge (MERGE_HEAD exists).
fatal: Exiting because of unfinished merge.
Git Merge Failed
fatal: You have not concluded your merge (MERGE_HEAD exists).
Git Pull Failed
Your local changes would be overwritten by merge.
Commit, stash or revert them to proceed. View them
解决方案是
1. 需要先commit。在Android studio的VCS--- Commit Changes 或者terminal 输入下面的指令:git commit -m "commit info" 。之后再pull或merge就可以顺利进行。
2.放弃本地修改,直接覆盖之
git reset --hard
git pull