文章目录
- 一文教会女朋友学会日常Git使用!Git知识总结
- 一、git基本知识了解
- 1.git简介
- 2.git区域了解
- 3.git常用命令
- 二、常用工作场景
- 1.克隆远程仓库,把仓库代码拉到本地
- 2.推送代码到远程仓库
- (1)本地代码和远程仓库版本相同,在你之前没有其他人推上代码
- (2)在你之前有其他人推上代码,但是和你修改的不是同一个文件
- (3)在你之前有其他人推上代码,和你修改的有同一个文件
- (3)在a分支修改了,但是我要修改的内容应该在b分支上
- 三、Git图形工具推荐
- 1.vscode上自带的
- 2.Soucetree
一文教会女朋友学会日常Git使用!Git知识总结
女朋友最近在学习git这块知识,我给他推荐了视频和廖雪峰的git文档,但是奈何新手刚开始学习,还是依然吃力,而日常工作中git这一部分使用其实并不难,所以也为了减轻女朋友的压力,这篇文章来了。
本文章涉及原理较少,主要是日常工作中直接使用,适合新手快速入门,如何想详细全面了解,还是推荐廖雪峰git讲解
一、git基本知识了解
1.git简介
Git是一个分布式版本控制系统,简单来说就是代码版本控制系统,在日常工作中,开发人员就需要利用git将各个人的写的代码放到一起。再简单来说,就是用来提交代码的。
2.git区域了解
区域这块主要便于后续操作理解,主要分成下面四个区域
- 工作区:处理工作的区域(即做项目打代码的区域,你写代码的地方)
- 暂存区:已完成的工作临时存放区域,等待被提交(使用git add .操作后代码进入区域)
- 本地仓库:存放数据的地方,但是还在本电脑上(使用git commit -m "xxx"操作后代码进入区域)
- Git远程仓库:最终的存放区域,即远程服务器(git push成功后代码推送的地方,就是代码仓库,比如Gitee、GitHub上建的仓库)
下面这张图比较直观,可以做参考
3.git常用命令
连接远程仓库
git remote add xxx(例如:git remote add origin 复制的ssh地址或者https地址)
克隆远程仓库
git clone xxx(例如:git clone 复制的ssh地址或者https地址)
创建分支并切换到该分支
git checkout -b 分支名称
相当于 git branch dev
git checkout dev
切换分支
git checkout develop
添加到暂存区
git add .
添加到本地仓库
git commit "...."
拉取远程仓库内容
git pull (例如:git pull origin dev 最新的提交从origin/dev抓下来,然后,在本地合并,解决冲突 再推送)
推送到远程仓库
git push (例如:git push origin dev 上传到dev分支仓库)
备份当前的工作区修改的内容
git stash 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。
读取最近一次备份的内容
git stash pop: 从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复
二、常用工作场景
1.克隆远程仓库,把仓库代码拉到本地
这里以码云为例复制shh或者https
执行下面克隆命令即可
git clone git@gitee.com:typhome/pinball-games.git
克隆到本地,就可以进行本地代码修改了
2.推送代码到远程仓库
推送代码到远端分为几种情况
(1)本地代码和远程仓库版本相同,在你之前没有其他人推上代码
这时执行三步骤即可
git add .
git commit "...."
git push
(2)在你之前有其他人推上代码,但是和你修改的不是同一个文件
这个时候需要先把别人的代码拉下来了,先进行git pull
git pull
git add .
git commit "...."
git push
(3)在你之前有其他人推上代码,和你修改的有同一个文件
这个时候直接git pull会报错,具体详细可以看我另一篇博客:解决git pull时出现冲突无法pull的问题
主要方法就是将代码提到git栈中进行储藏,然后拉下代码后再应用,
主要步骤
git stash
git pull
git add .
git stash pop
(解决冲突)
git add .
git commit "...."
git push
(3)在a分支修改了,但是我要修改的内容应该在b分支上
这个时候在a分支修改了,没有提交,直接切换到b分支上会报错切换不了,这个时候也需要用到stash了
//先进行备份
git stash
//切分支
git checkout b
//拉下最新代码
git pull
//再应用推送即可
git add .
git stash pop
(解决冲突)
git add .
git commit "...."
git push
以上几种情况基本满足日常工作需求,主要就是代码拉取和推送
三、Git图形工具推荐
平常敲命令可能过于麻烦,或者不那么直观,这里推荐两个我常用的,提高开发效率,但是建议在git命令熟悉后或者使用一段时间后,再使用图形界面操作git
1.vscode上自带的
可以看修改代码对比、切换分支、提交、stash等等,也是非常直观方便
2.Soucetree
Soucetree是我最常用的git图形界面了,相比于vscode自带的更直观了,对于分支的操作更方便。
我认为唯一不足的就是修改代码对比,soucetree只显示修改行对比,而vscode的左右代码整个文件对比感觉更直观一点。
这两种方式具体操作这里不具体介绍了,大家自行百度即可。有什么看法也欢迎讨论~