git 版本控制 2.0

git 空间划分

1、工作空间  创建的文件颜色是红色都在工作空间

2、暂存区 解决冲突的区域,暂存工作空间提交的内容

3、本地仓库  使用git commit 提交,会将暂存区的代码提交到本地仓库

4、远程仓库  github 、gitlab 管理公共代码的,与本地仓库一致,本地仓库 push 即推送代码到远程仓库

 git 常用命令

1. 查看本地以及远程分支

git  branch -a 

2.本地创建分支

git  checkout -b  dev

3. 推送本地分支到远程

git  push origin dev:dev (第一个为本地分支:远程分支名称)

4.删除远程分支

git  push origin --delete  dev  远程分支名称

5.删除本地分支

git  branch -D dev

6.切换分支

git  checkout  master

7.查看git 配置

git  config --list

 8.查看git 某一项配置

git  config  user.name(例如)

9.查看某一项命令的参数

git  add  -h 

10.git clone 远程仓库到本地,可以自定义项目名称

git clone https://github.com/libgit2/libgit2 mylibgit

11.查看2条日志

git  log -2

 

 

 

git merge 与 rebase 

1. merge , 将目标分叉上的所有commit 一并应用到当前分支的commit ,并产生新的commit 

 

git  checkout master
git merge branch1

pull 的内部操作就是将远程代码merge 到本地分支

 

 参考:https://www.jianshu.com/p/1a7e38cdbf76

rebase 

1.合并多个commit 为一个完整的commit ,如下将 BCD 三个提交合并为一个提交

 

2.将某一段commit 应用到另一个分支上

https://www.jianshu.com/p/4a8f4af4e803

在 Idea 中使用 rebase

使用场景: test 分支有一些提交的内容 ,自己的分支 dev  也有一些提交,为了线性的显示提交的顺序,使用idea 将 test 分支的更新同步到当前分支 dev 上

rebase 使用条件

1.pick 

保留当前分支的该commit 

如上述,在 m 节点处,产生新分支 dev 。 master 分支产生新的commit  C  D , dev 产生新的分支 A  B  。现在将master 分支的提交合并到 dev 分支。并且dev 与 master 分支的所有提交都保存 。使用 pick 

git  checkout dev
git rebase master

idea 操作

 

 

 

 

2.reword 

保留该commit ,单是需要修改注释

 

 3.edit

保留该commit,单需要修改提交

使用edit 后,需要使用

git  add . 

git  continue rebase 

4.squash

将该 commit 与前一个commit 合并

 

5.fixup

将该commit 与前一个commit 合并,但不保留该commti 的注释信息

 

 使用fixup 提交

 

 

6.drop

使用的 drop 提交之前

 

 

 

 直接删除该提交

 

 注意:rebase 第一个提交不能是 squash 、fixup

 

posted @ 2020-08-19 16:09  byebai95  阅读(235)  评论(0编辑  收藏  举报