Git真的是一个不错的东西啊!!!
分两部分吧,之前整理的简单指令为一部分,项目中遇到的实际问题及解决办法为一部分。
这儿先将bug吧 毕竟基础命令熟了之后就记住了
第一部分:常见BUG解决
1、warning: LF will be replaced by CRLF in ***
错误描述:转码问题
解决方案:(可查看此博文更多命令:https://blog.csdn.net/GodDavide/article/details/84331957)
#提交时转换为LF,检出时转换为CRLF
$ git config --global core.autocrlf true
#提交时转换为LF,检出时不转换
$ git config --global core.autocrlf input
2、git push error: RPC failed; HTTP 403 curl 22 The requested URL returned error: 403
错误描述:git push 失败,403等等 根本原因是:git仓库的账户和用户名错误导致
解决方案:https://blog.csdn.net/GodDavide/article/details/89925668
3、“non-fast-forward”errors
错误描述:这个仓库是你 add remote 之前就创建好的, 在你 add remote 之后,再进行的commit和远程的commit信息不同,所以需要将远程的代码pull回本地,并且忽略项目差异
解决方案:git pull origin master --allow-unrelated-histories
这个后缀命令 允许不同项目的合并。
再之后的push就成功了
第二部分:常用基础命令列表
1:git remote -v 查看远程分支的地址
2:git stash 暂时保存当前的修改现场,可以不用add和commit,切换到其它分支做修改再回来,可以通过命令还原现场
git stash -list 查看保存过的修改现场列表
git stash apply
恢复,但是恢复后,stash内容并不删除,可以用 git stash drop
来删除
git stash pop
恢复,并同时把stash内容也删了:
3:find . -type d -empty -exec touch {}/.gitignore \; (分号别漏掉!)Git提交空文件夹
4:git reset --hard commit_id 回退到指定版本
5:git reflog 查看历史commit_id
6:git log 查看历史提交信息
7:git cherry-pick [62ecb3](commit_id) 合并其它分支上的某一次commit
8:git diff 比较工作区和暂存区的差别
9:git diff commitId_1 commitId_2 比较两次提交的所有差异文件
10:git diff commitId_1 commitId_2 --文件名 比较两次提交的指定文件的差异
11:git remote rm origin 删除远程仓库
12:git remote add origin http://... ... 添加远程仓库
13:git checkout --filename 取消单个文件的改动 git checkout . 放弃当前所有的改动
14:git branch -a 查看包括远程分支的所有分支
15:git branch -d dev 删除dev分支 -D 强制删除
16:git push origin -d dev 删除远程的dev分支,该分支不能为默认分支