美文网首页
git学习笔记

git学习笔记

作者: 仰望星空的小狗 | 来源:发表于2019-11-14 09:01 被阅读0次

    之前学习git的时候都没有好好学,最近工作中逐渐需要使用git,因此打算稍微系统的学习一下。此次主要是学习廖雪峰老师的GIT教程并用xmind进行简单归纳

    0、知识点框架

    在这里插入图片描述
    该廖雪峰的GIT教程中,主要按照以上几个内容进行讲解:
    • 创建版本库:介绍基础的创建版本库并提交文件的方法
    • 时光穿梭机:介绍如何版本的回退,撤销修改以及删除文件等方法
    • 远程仓库:介绍如何添加远程仓库以及从远程仓库克隆文件到本地的方法
    • 分支管理:介绍如何使用git的分支管理的方法进行工作和多人协作
    • 标签管理:介绍如何git标签的相关操作
    • 自定义git:介绍如何修改git的配置使之符合自己的工作习惯

    接下来分别按照以上几个部分记录我用xmind做的学习笔记

    1 创建版本库

    在这里插入图片描述

    此部分主要讲了使用git init; git add; git commit -m "<message>" 等指令来创建本地的git仓库,并将文件添加提交到仓库,同时使用git status; git diff <file>来查看状态和diff。这些都是很基础,很常用并且很重要的git指令。

    2 时光机穿梭

    在这里插入图片描述

    此部分主要介绍了在我们工作过程中,对各种修改需要回退撤销的方法。

    2.1 工作区、暂存区、仓库

    在这之前需要首先了解工作区,暂存区和仓库之间的区别。

    • 工作区:就是我们当前编写代码工作的目录
    • 暂存区:在.git中暂时存放添加文件地方,git add <file>指令就是将文件添加到暂存区,此处还不是仓库
    • 仓库:真正git管理的代码仓库

    2.2 撤销修改

    本节的撤销修改包括xmind中的“撤销修改”和“版本回退”。
    撤销修改主要分为这三种情况:

    • 撤销工作区的修改
      使用 git checkout -- <file> ,注意此处的checkout后面需要添加 --
    • 不仅修改了工作区,还add到了暂存区,此时想丢弃修改
      git reset HEAD <file> 把暂存区的修改回退到工作区,再使用 git checkout -- <file> 可进一步撤销工作区的修改
    • 不仅修改了工作区,add到暂存区,甚至提交到了仓库,此时想回到上一版本
      git reset --hard HEAD^ 回退到上一版本;
      git reset --hard HEAD^^ 回退到上上一版本;
      git reset --hard HEAD~10 回退到前面第10个版本;
      git reset --hard <commit_id> 回退到commit_id对应的版本,其中commit_id可以通过git log或者git reflog查看历史日志来查找

    2.3 删除文件

    使用rm删除本地文件之后,再使用git rm <file> ; git commit -m <message> 删除git中的文件

    3 远程仓库

    在这里插入图片描述

    此部分主要讲如何与远程仓库(如github)进行连接,并上传或下拉代码。

    3.1 先有本地库,后有远程库

    此种情况需要将本地库添加到远程库,使用git remote add origin git@server-name:path/repo-name.git 关联一个远程仓库,然后将本地的代码推送push到远程库。第一次推送 git push -u origin <branch> ; 非第一次推送 git push origin <branch>

    3.2 先有远程库,后有本地库

    此种情况需要将远程库克隆clone到本地,使用git clone git@server-name:path/repo-name.git

    4 分支管理

    在这里插入图片描述

    分支管理相关的指令操作参看廖老师的教程或者上面的xmind截图,以下标记一些个人觉得重要的地方。

    • 一般创建出来的分支需要先合并再删除 git branch -d <name>,但是如果想要删除还没有经过合并的分支的话,使用 git branch -D <name>
    • 在多人协作过程中,合并分支的时候可能会出现冲突,须先解决冲突,再提交,合并
    • 在工作区进行修改之后,需要先进行add/commit提交或者stash保存工作现场,然后才能切换到其他分支

    标签管理

    在这里插入图片描述

    发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本库的一个快照。

    自定义git

    在这里插入图片描述

    相关文章

      网友评论

          本文标题:git学习笔记

          本文链接:https://www.haomeiwen.com/subject/taplictx.html