现在插播一个git的操作博客
从git是什么 git的安装 使用什么的 开始写起 篇幅会非常长 但是git说到底就是一个代码托管仓库 其中常用的重点会着重标出来
其实想学git的同学应该也知道git就是代码托管仓库 然后是平时用来协作开发的 那既然是这样 电脑不可能都有网呀 所以仓库会有本地仓库和远程仓库
所以用git进行团队开发 流程一般是这样的 所以我们的学习 肯定是了解完git后 学习在git中完成这些操作的命令是什么 然后就是熟练的使用这些命令(代码托管仓库不止git一个呀 比如svn什么的 我本科就了解过)
1.从远程仓库中克隆或拉取代码到本地仓库(clone/pull)
2.从本地进行代码修改
3.在提交前先将代码提交到暂存区
4.提交到本地仓库。本地仓库中保存修改的各个历史版本
5.修改完成后,需要和团队成员共享代码时,将代码push到远程仓库
好了 开始正文吧
版本管理工具的特性一般有
1、记录历史版本、回退历史版本
2、团队开发中,方便合并代码
版本控制工具用svn和git来说一下
svn的缺点其实也是git的优势
git的安装 在网上搜索git 然后去官网下载自己电脑对应的版本 一步一步的安装即可 我搜了以下 网站是 https://git-scm.com/ 下载页面是 https://git-scm.com/downloads (restful风格的网址 很舒服)
这篇博客写的时候 版本是 2.31.1
git是命令行操作 也有可视化的操作 比如 tortoisegit这个工具 网上搜索就行 网址是 https://tortoisegit.org/ 下载页面是 https://tortoisegit.org/download/ 下载对应版本的就行 tortoisegit提供了中文汉化包 下载对应的就行
先安装git 路径可以改自己想要的路径 然后安装tortoisegit这个工具 虽然命令行高大上 但是 能可视化提高效率还是可视化占优势对吧 然后点击安装你下载的汉化包 也是下一步下一步就行
如果git的路径改了 那么安装tortoisegit这个工具的时候 要把安装步骤中git的启动bin路径改一下 这点要注意
如果都完成后 那么 在文件夹中右击应该是这样的
然后进入tortoisegit的设置 把中文改一下 然后再重新进入一次 语言就改成中文啦
先说下git的工作流程 使用对应的命令也就是完成git的一次工作流程
远程仓库在远端 比如GitHub 本地仓库 工作区 和 暂存区都是在我们的本机上 所以我们先从本机操作开始学习git
我们在本地工作区 就是写代码的地方写好代码 要先提交到本地的暂存区 然后提交到本地仓库 在 push到远端
下面是例子
首先新建一个文件夹 然后右击 在这个文件夹下创建一个版本库
比如说我是在gittest这个文件夹下测试
创建完成就会这样 (这是一个隐藏的文件夹 需要打开设置 查看隐藏的项目才行)
工作区的意思就是当前.git文件夹所在的文件夹 就是我们的工作区
比如说我们新建一个辞职申请.docx
接下来要把这个文件提交到暂存区
我们使用tortoisegit进行操作 对这个文件进行右击 或者文件夹空白处右击都行 找到 tortoisegit这个工具的添加选项
然后点击添加
就完成了
这就已经添加到暂存区了 一般来说做完操作的文件图标会有个变化 比如添加完 文件图标上有个蓝色的+号 但是我的没有 因为我电脑装完没有重启 如果你们重启了 应该会有的
如果你没点确定 点的是提交 那么会把这个暂存区的文件再次提交到本地仓库
接下来 我们再把这个暂存区的文件提交到本地仓库 同样是右键
点击提交到master master就是主分支的意思 因为一个项目开发可能是多个分支同时开始 最后合并的 首次会让你填写名称和邮箱
然后会让你填写日志信息 这个是一定要填的 比如你写了什么代码 代码什么功能 要说清楚
这就完成了推送到本地仓库 此时点击关闭就关闭了 点击推送那么就是推送到远程仓库
好了 大家可以多试试这个过程 工作区 ---》暂存区---》本地仓库
比如我又添加 提交了一个辞职申请第二版
创建仓库的方式不止这一种 使用git gui也可以创建
新建一个文件夹 然后点击git gui here 按照提示点击 就新建了一个仓库了
其次我们也可以使用命令行来创建试试
还是新建一个文件夹 然后在文件夹下面右击 点击git bash here
命令是 git init
就好了 我们要不就用可视化工具 要么就命令行 先把工具用熟 再去学命令
回到刚刚那个文件夹 我又新建了一个文件 辞职申请.txt 然后添加到暂存区 提交到本地文件
在本地仓库已经有的情况下 怎么更新呢
比如在辞职申请.txt 里面添加了一句话
这是我们修改了一个文件 我们只要再提交到本地仓库就行了
那么我们就把更新内容提交到了本地仓库 为什么这里不添加到暂存区 因为这个文件之前已经被添加到暂存区 然后被提交到本地仓库 所以这个文件已经被git接管了 所以直接提交到本地仓库即可
我电脑没重启 所以文件图标没改变 一般来说 图标状态有
比如新建了一个文件 这个文件还没有被纳入git版本控制 而只要提交到了暂存区 那么都属于第二种 被纳入到了git的版本控制 所以接下来只要提交到本地仓库即可
现在来看一下怎么对比差异
我们对着辞职申请.txt 右击 用tortoisegit工具查看对比差异
左边就是本地仓库中的版本 而右边是我刚刚添加了一行字 所以是目前的工作区版本
查看日志 我们要看一下提交过的日志
我们在文件夹右击 通过tortoisegit工具 查看日志
就是这样 刚刚操作过的日志在这里 我们可以把鼠标移到操作图标上
也可以看到这个图标的意思是什么
没有提交到暂存区的文件没有被纳入到git版本管理 所以是不会显示信息的
知道了查看历史版本 那么怎么回退到历史版本呢
还是进入到查看日志界面 在想要退回的版本上点击
比如我想回到上个版本 那么 点击重置master到此版本
这里选择硬重置 就是会删除一些这个版本之后的一些文件什么的
这就完成了 再打开看一下
此时文件内容回去了
再看一下日志
日志变成这样了 也就是版本回退了
删除操作 删除也是一样的 要把删除操作提交到本地仓库 才算是纳入了git的版本控制 才算是真正的删除
比如我删除了那个文件 然后右键提交到master 就会出现这个
到这里 才算是删除了 可以看看日志 也是有这个操作的
删除也可以保留本地文件 但是删除本地仓库中文件 意思也就是说 我不想要这个文件被版本控制了 但是我还想在硬盘中留下这个文件 那么就
在那个文件右击删除并保留本地副本 当然了 做完这个操作 还是要提交到本地仓库才能生效的
误删除也是可以恢复的 但是前提是要被纳入git的版本控制 比如 误删了 辞职申请.txt 那么右键点击还原即可
这里说一下忽略提交 因为一个项目里面的文件很多 有许多文件是不需要提交的 所以可以给git添加一些忽略信息什么的
比如说配置.iinn 这个文件是不需要被提交的
将iinn结尾的都添加到忽略列表
此时会产生上述的文件 文件内容如上
此时 我们再添加提交 git都不会把这种文件纳入版本管理了
这个博客写的实在是太长了 所以还是分成几个部分吧 下一个部分是分支管理之类的