git知识点大全 附思维导图
如下是我学习廖雪峰老师的git教程整理的知识点总结,比较全,应付日常的工作需要应该够用了,除此以外,如需需要上面的git思维导图,可微信公众号关注哔哗回复关键字git可获取,在这里发不了。Gigit介绍1.由Linus用C语言编写.2.分布式版本控制系统3.集中式版本控制系统 CVS,SVN缺点:缺点:更新速度慢,必须联网.4.集中式版本控制系统工作原理:1.版本库放在中央处理器.2.处理数据时:
如下是我学习廖雪峰老师的git教程整理的知识点总结,比较全,应付日常的工作需要应该够用了,除此以外,如需需要上面的git思维导图,可微信公众号关注哔哗回复关键字git可获取,非百度网盘文件,直接在线下载就可以,很快的哦)在这里发不了。
Git
git介绍
1.由Linus用C语言编写.
2.分布式版本控制系统
3.集中式版本控制系统 CVS,SVN缺点:
缺点:更新速度慢,必须联网.
4.集中式版本控制系统工作原理:
1.版本库放在中央处理器.
2.处理数据时:先从中央处理器获取数据,个人处理完数据后,再传送到中央处理器.
5.分布式版本控制系统工作原理:
1.去中心化.
2.每一个主机都是一个版本库.
3.无需联网,除非主机之间需要相互传送文件.
git常用命令
1.git config 用来获取并设置存储库或者全局选择.
-
查看用户名和邮箱.
- git config --global user.name.
- git config --global user.email.
-
修改用户名和邮箱.
- git config --global user.name user.
- git config --global user.email email.
2.git init 文件名
- 把当前文件夹或目录设置为git可以管理的仓库.
- .git 文件用来管理跟踪版本库.
3.将文件添加到暂存区
- git add 文件名.
4.将当前在暂存区的所有文件提交到版本库
- git commit 文件名.
- -m参数::对要提交的文件进行说明.
- 多次上传add,一次提交commit.
5.查看工作区和暂存区的文件状态
- git status.
6.查看工作区和版本库最新文件的差异
- git diff 文件名.
- git diff HEAD – 文件名.
7.查看commit历史
- git log.
- –pretty=oneline 简化commit历史记录.
8.回退到某个版本
- git reset --hard commit ID .
9.撤销暂存区文件的修改
- git reset HEAD 文件名
9.查看命令历史
- git reflog.
10.撤销工作区文件的修改(包括删除)
- 删除版本库里的文件.
11.删除版本库文件
- git rm 文件名
- rm 删除工作区的文件,前面不带git.
- 删除版本库里的文件后需要commit.
git远程仓库
1.生成SSHKey
- ssh-keygen -t rsa -C “user@example.com”.
- id_rsa 私钥,id_ras.pub公钥.
2.为GitHub设置SSHKey的原因
- 确保仓库内容的推送是本人推送.
3.GitHub作为远程仓库的两个好处
- 作为远程同步仓库,备份本地仓库.
- 通过GitHub方便多人协同工作.
4.关联本地仓库和远程GitHub仓库
-
两种关联方式:
- git remote add origin git@github.com:用户名/ 仓库名.git.
- git remote add origin https://github.com/用户名/仓库名.git
5.推送内容到仓库
-
把当前分支推送到远程仓库对应分支.
- git push -u orign master.
-
加-u 参数 是为了把本地仓库master分支与远程仓库master分支关联起来,此后再次推送不再需要加-u参数,简化命令.
-
把本地未push分叉提交历史整理成直线
- git rebase
6.从远程库克隆到本地
-
两种克隆方式:
- git clone git@github.com:用户名/仓库名.git.
- git clone https://github/用户名/仓库名.git.
-
查看远程库信息
- git remote
- git remote -v
-
删除远程库
- git remote rm 远程仓库名
-
git支持多种协议,但相比于https,git协议最快.
git分支管理
1.HEAD只指向分支,而且仅指向当前分支,master是主分支,指向提交点.
2.分支合并的原理
- 让master分支指向与已修改提交分支相同的提交点.
3.创建分支
-
创建分支并切换
- git checkout -b分支名称.
- git switch -c 分支名称.
-
如果分支存在则表示切换分支,否则就是创建新分支
- git checkout 分支名称 .
- git switch 分支名称.
4.查看所有分支及当前分支
- git branch
5.分支合并
- git merge 分支名称.
6.分支删除
- git branch -d 分支名称 .
- git branch -D 分支名称 (强制删除分支).
7.查看分支合并提交历史
- git log --graph --pretty=oneline --abbrev-commit.
7.fast forward模式
-
分支的默认模式为fast-forward模式,删除分支后不保留分支信息.
-
如想保留分支信息,可使用如下命令
- git merge --no-ff -m "分支合并说明 " 分支名称.
- –no-ff 表示禁用fast-forward模式,-m 表示对被合并分支进行说明.
8.分支工作现场保存
-
保存当前分支工作现场
- git stash .
-
查看保存的分支现场
- git stash list.
-
仅恢复分支
- git stash apply.
-
删除分支
- git stash drop.
-
恢复分支并删除
- git brash pop.
-
把修复的分支bug合并到当前分支
- git cherry-pick < commit id >
9.抓取远程库最新提交
- git pull.
- 创建本地分支与远程分支的关联。 git branch --set-upstream-to=origin/dev dev.
git标签管理
1.在git中打标签是为了管理各个历史版本,便于寻找
2.创建标签(默认打在最新提交上)
- git tag 标签名
3.查看所有标签
- git tag
4.给历史某个版本打标签
- git tag -a 标签名 -m" 说明" 提交commitid
- -a 指定标签名 -m指定标签说明
5.查看标签信息
- git show 标签名
6.删除标签
- git tag -d 标签名
7.推送标签到远程库
-
推送单个标签
- git push origin 标签名.
-
一次性全部推送
- git push origin --tags
-
从本地删除标签
- git tag -d 标签名
-
从远程删除标签
- git push origin :refs/tags/标签名
git自定义
1.创建 .gitignore文件
- 在window中通过文本编辑器创建
2.查看.gitignore文件的过滤规则
- git check-ignore -v 文件名
3.为git命令配置别名
- git config --global alias.别名 原名
4.删除别名
-
查看.gitconfig配置文件并删除相对应的行
- cat .gitconfig.
更多推荐
所有评论(0)