git使用心得

git是一个常用的版本控制工具,本文旨在记录自己学习git的命令操作

参考文献:https://mp.weixin.qq.com/s/Km5KuXPETvG0wCGHrvj9Vg

这里简要列出常用的git命令,方便查看,之后将详细记录每条指令的使用方式

op 描述
git init 在当前目录新建一个Git代码库
git status 查看整个仓库状态(本地)
git add FILES 将FILES添加到暂存区
git add . 将当前目录下全部文件添加到暂存区
git reset FILES 暂存区删除FILES
git reset . 暂存区删除当前目录下全部文件
git checkout -- FILES 从暂存区检出FILES到工作区(会覆盖工作区)
git checkout . 从暂存区检出所有文件到工作区(会覆盖工作区)
git commit -m "log info" 暂存->版本仓库,并添加标注信息
git log 查看提交日志
git reset —hard 版本信息 head回退版本
git reflog 查看HEAD之后的提交记录
git reset —hard 回到未来
git remote 列出已经存在的远程分支
git remote -v 在每一个名字后面列出其远程url
git fetch 抓取远程到本地
git push 本地更新到远程
git merge 合并两个或多个历史记录
git pull 从其他存储库或分支抓取并合并到当前存储库的当前分支
git checkout -b 分支名称 创建分支
git branch 查看所有分支
git checkout 分支名 切换到指定分支
git rebase -i [startpoint] [endpoint] 整理后提交
git rebase --abort 撤销rebase

一、git的基本操作

之前已经安装过git,直接在新文件夹下打开git bush

初始化本地版本库

查看当前版本库的状态

可以看到,当前版本只有一条主master,并且当前没有任何提交

在本地创建README.md文件

使用add提交到暂存区

可以看见有一个新文件:README.md
此时查看status,发现有一个“Changes to be committed”

将修改提交到版本仓库

使用log查看日志,可以看见刚才提交的信息,commit-id、auther、提交时间等

再次查看status,“nothing to commit, working tree clean”

二、git远程版本库的基本操作

使用码云创建一个远程版本仓库,并clone到本地

查看当前reomte

在当前工作区拉取和推送

三、团队项目中的分叉合并

创建新分支

可以看到,此时自动切换到新分支
可以使用checkout切换回主分支

合并分支,首先确保在master上,使用merge合并分支

使用--no-ff参数关闭"快进式合并"(fast-farward merge)

四、Git Rebase


要完成上图的操作,首先切换到刚才创建的分支mybranch上

先创建一个a文件,提交并标记为版本A

在创建一个b文件,提交并标记为版本B


可以看到此时的日志中mybranch分支有两个提交记录,并且HEAD指向B版本,matser还是原来的版本
使用git rebase -i HEAD^^打开编辑窗口

删除B版本一行的信息

添加一个c.txt变成c版本

删除A版本一行的信息

此时再查看日志信息,发现只有C版本的提交存在

切换回master

合并master和mybranch

此时查看log

HEAD指向master,合并的是mybranch的C版本,A和B只在mybranch中出现过,并没有出现在master中,符合题目要求
另外从gitee的提交记录上也可以看出只有c版本的修改被提交

posted @ 2020-10-09 14:16  石卡口  阅读(95)  评论(0)    收藏  举报