git的使用总结

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

分布式和集中式的区别

svn:集中式工具,方便管理,管理员能给各个部门人员派发不同的权限,也能知道不同工作人员在干嘛
git:分布式工具,

git三个区

工作区----->缓存区------>仓库
1.git add .工作区------>缓存区
2.git commit -m 从缓存区------>仓库

git 常用命令

基础命令

1.git init -----创建仓库
2.git add [file name] 或者 git add . —将文件从工作区加到缓存区
3.git commit -m ”提交描述“ -------从缓存区到仓库
4.git status
5.git diff -----本地工作区和缓存区的区别
6.git diff --cached -------
7.git reset --hard --------退回到什么版本
8.git push ----将本地仓库传给远程服务器
9.git pull -----将远程服务器的内容传给本地仓库

git fetch 和 git pull的区别

git pull:是在本地仓库已经存在的情况下,将远程最新的commits抓取并合并到本地版本库的过程

git fetch: 从远程版本库抓取最新的commits,不会进行合并

git merge:合并

所以git pull = git fetch + git merge

拉取不同
1、Git fetch:Git fetch会将数据拉取到本地仓库 - 它并不会自动合并或修改当前的工作。
2、git pull:git pull是从远程获取最新版本并merge到本地,会自动合并或修改当前的工作。
commitID不同
1、Git fetch:使用Git fetch更新代码,本地的库中master的commitID不变,还是等于1。
2、git pull:使用git pull更新代码,本地的库中master的commitID发生改变,变成了2。
分支(branch)的基本操作

4.push之前一定要进行哪个操作?
push之前一定要进行本地更新操作。使用git pull命令或者使用git fetch和git merge的命令组合。这时候,可能会出现版本冲突,如果出现的话,需要解决完冲突再进行代码push。

5.如何解决版本冲突?
版本冲突多出现在合并操作(合并远程仓库代码或者合并分支代码)中。如果出现版本冲突,需要具体分析出现冲突的代码区,手动进行代码合并,然后再进行提交。

git rebase和git merge的区别

rebase的分支处理图

merge的分支处理图


Merge
简单易理解
源分支和目标分支相互分离
保留功能分支的提交历史和分支图形
分支一旦较多显示比较混乱
Rebase
简化复杂的记录且线性可读
没有合并的记录
多个commit冲突时必须一个个提交去修改
对远程分支rebase需要force push

git checkout 切换分支

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值