zoukankan      html  css  js  c++  java
  • git 学习笔记

    Git 知识梳理

    git init

    git init 这个命令,会把当前目录,变成一个git管理的目录;这个命令,会创建一个.git文件夹,这个文件夹就是git存放所有文件历史版本的目录

    git add

    git add这个命令,可以把目录中的文件,加入到git的管理范围内,比如常用的 git add .,这个.,不要小看了,代表当前目录下的所有文件,包括目录里面一层层的所有文件

    git commit

    • git commit,这个指令相对简单。commit指令的用途,就是把使用git add加入到git staging里面的所有更改,打包成一个新的历史,并且会为这个新生成的历史包生成一个HASH码,这个HASH码就是这个commit的id。
    • git要求每个commit,必需有一个注释,如果运行git commit时候,没有额外的参数,则git会调取系统默认的文本编辑器(通常是vi)来让用户编辑提交注释
    • 我们也可以通过 git commit -m '在这里写注释' 来直接提交
    • git add . 和 git commit 可以合并为一个指令, git commit -am 'comment here'
    • 但是注意这个里面的坑,还是跟git add .一样,这个并不会提交要删除的文件。
    • lastly,万一,刚刚commit就发现有个东西有遗漏,或者发现commit的东西有问题,可以立即更改一下,git add .之后,执行 git commit --amend,这样可以修复刚刚提交的这个版本
    • 这样并不会生成两个历史,只会保留最后一次的历史。但是注意,这个操作不要在push之后做

    git status

    • 当你需要更新代码库,需要把服务器上最新的代码同步到本地的时候,你首先需要知道自己在哪个分支上,这时,你需要通过git status来查看当前的状态
    • git status可以汇报当前分支,当前有哪些文件是更改过了,哪些是新增的,哪些是删除的,哪些已经使用add命令加入了待提交列表
    • 查看完状态了,如果发现本地有更改,git pull时候会产生冲突,所以需要先把working directory清理干净再pull

    git stash

    那么我辛辛苦苦编辑了一半的更改怎么办?直接提交了?好像还没改完,提交了不好。那么git提供了一个叫做stash的地方,可以临时存放一下更改

    git pull

    整个working directory就是clean的状态了,这时候,我们就可以执行 git pull

    • git pull 做了两个事情,1. 把远端的代码同步到本机,2. 把当前分支对应的远端分支的最新更改,合并到当前分支的本地分支上
    • 其实本质上对应了两条git指令: git fetch ; git merge 本地分支 远端仓库/远端分支

    当我们git pull拿到最新的代码以后,别忘了之前放在暂存区 stash的哪些更改

    这个命令可以看出,git stash,这个暂存区,实际上是个堆栈结构

    这是为了方便使用。stash也支持apply一个指定的暂存版本

    stash pop里面有个坑

    如果git stash pop时候没有冲突,那么git会自动删除暂存区里面的更改
    如果冲突了,很不幸,这个暂存区里面的更改会在working directory 里面有一份, 暂存区里面还有一份!

    这样,你需要在解决完冲突之后,手工把暂存区里面的清除掉
    不然,如果你忘记删掉的话,下次你就搞不清楚这个暂存区里面的内容,到底要不要pop出来了
    git stash drop 暂存区名字或者哈希

    git技术栈如图如果掌握了,才算是基本会用
    image

  • 相关阅读:
    [题解]AtCoder Beginner Contest 174
    [高精取模]
    C++知识点—对拍
    C++知识点 STL容器3—map && pair
    致远星的搜索战争 T3 星际穿梭 题解
    洛谷 7月月赛 Div.2 T1 可持久化动态仙人掌的直径问题
    T139631 T3 阶乘之和
    C++知识点 STL容器2—set
    【2020-08-10】轻易的评价反而会阻碍成长
    【2020-08-09】人生十三信条
  • 原文地址:https://www.cnblogs.com/psyco/p/10548474.html
Copyright © 2011-2022 走看看