Git常用操作
https://backlog.com/git-tutorial/cn/intro/intro1_1.html
Git详解(思维导图)
https://blog.csdn.net/huwh_/article/details/78505565
Git fecth 和git pull 区别
https://blog.csdn.net/huang211630/article/details/73612068
常用命令
1. 显示当前的Git配置
git config --list
Git常用操作
https://backlog.com/git-tutorial/cn/intro/intro1_1.html
Git详解(思维导图)
https://blog.csdn.net/huwh_/article/details/78505565
Git fecth 和git pull 区别
https://blog.csdn.net/huang211630/article/details/73612068
常用命令
1. 显示当前的Git配置
git config --list
2. 查看文件状态
git status
3.增加文件到暂存区
git add [filename](可以使用通配符)
4.删除暂存区的文件
git rm --cached [file]
5. 改名文件,并且将这个改名放入暂存区
git mv [file] [file-renamed]
6. 提交暂存区到仓库区(默认全部)
git commit -m [message]
7.提交暂存区的指定文件到仓库区
git commit [file1] [file2] ... -m [message]
8.列出所有本地分支
git branch
推送代码到gitlab(远端的master)
git push origin master
将本地的master分支内容推送到远端的test1分支(如果推送的远端分支不存在就会新建一个分支)
git push origin master:test1
9. 列出所有远程分支
git branch -r
10. 列出所有本地分支和远程分支
git branch -a
11. 新建一个分支,但依然停留在当前分支
git branch [branch-name]
12. 切换到指定分支,并更新工作区
git checkout [branch-name]
13. 切换到上一个分支
git checkout -
14. 合并指定分支到当前分支
git merge [branch]
(将本地的branch1_test分支合并到master)
15. 删除分支
git branch -d [branch-name]
16. 查看当前的tag列表
git tag -l
17.新建一个tag在当前commit
git tag -a [tagname] -m 'messages'
18.删除本地tag
git tag -d [tag]
19. 查看tag信息
git show [tag]
20. 提交指定tag
git push [remote] [tag]
将v2.0提交到远端的master上
21. 拉取远程仓库的变化,并与本地分支合并
git pull origin master
22. 将本地分支提交到远端的其它分支
git push origin 本地分支:远端分支
23. 显示当前分支的版本历史
git log
指定文件
git log [filename]
24. 显示所有提交过的用户,按提交次数排序
git shortlog -sn
指定某个文件
git shortlog [file] -sn
25. 显示指定文件是什么人在什么时间修改过
git blame [file]
26. 显示当前分支的最近几次提交
git reflog [file]
27. 重置当前分支的HEAD为指定commit,同时重置暂存区和工作区,与指定commit一致(主要用于回滚版本)
git reset --hard [id号]
git的版本回退
先用git reflog查看版本
文件的第一次提交
开始对文件修改
版本回退
这是当前的版本
开始回退到上一次提交的版本
Gitlab默认会对master分支进行保护
取消对master的保护
再上传
查看远端
Git通过tag进行版本回退
Master当前版本为tag 6.0
上传tag7.0版本的master
查看master的变化
回退到6.0版本并上传到远端master
使用git log查看6.0的提交id
使用reset将当前库的版本回退到6.0
使用git log查看当前的版本
目前已经回退到6.0了
提交到远程仓库的master
查看远端master
Git常见报错
1、提交警告
参考地址:https://blog.csdn.net/feng88724/article/details/11600375
原因:我们是在windows的环境编辑文件和linux的换行符不同所以做了自动替换
只是警告不影响什么(win环境建议默认)
解决报警方法:不使用自动换行
git config --global core.autocrlf false
2.冲突解决
新建一个分支并切换到该分支
将test1分支的a文件修改
原a文件内容
修改后的a文件内容
在test1分支上提交
切换到master分支
修改master分支的a文件最后一行并提交
合并分支(冲突)
Git status查看冲突文件
查看a文件的内容
Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容,我们修改如下后保存。
提交
Git log查看分支合并情况
git log --graph --pretty=oneline --abbrev-commit
最后删除test1分支
git branch -d 分支名