zoukankan      html  css  js  c++  java
  • Git 笔记

    1. 创建版本库

    • 创建目录
    • git init
    • git add <file>
    • git commit -m "本次提交内容的说明"

    2. 查看状态

    • git status
    • git diff <file>

      如果 git status 告诉你有文件被修改过,用 git diff 可以查看修改内容。

    3. 版本回退

    • HEAD 指向的版本就是当前版本,上一个版本就是 HEAD^,上上一个版本就是 HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成 HEAD~100
    • git reset --hard HEAD^  退回到上一个版本
    • git reset --hard commit_id 退回到指定版本
    • commit_id 可以用 git log 或者 git reflog 查看
    • 用 git log 可以查看提交历史,以便确定要回退到哪个版本。
    • 重返未来,用 git reflog 查看命令历史,以便确定要回到未来的哪个版本。

    4. 工作区和暂存区

    • 工作区(Working Directory), 就是我们第一步所创建的目录
    • 版本库(Repository):

      工作区有一个隐藏目录 .git,这个不算工作区,而是Git的版本库。

      Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。

    Git - Working Directory and Repository

      

    把文件往Git版本库里添加的时候,是分两步执行的:

    第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;

    第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

    因为我们创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以,现在,git commit就是往master分支上提交更改。

    可以简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存区的所有修改。

    4. 管理修改

    • Git跟踪并管理的是修改,而非文件
    • 文件提交后,用git diff HEAD -- <file> 命令可以查看工作区和版本库里面最新版本的区别

    5. 撤销修改

    • 场景一:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令 git checkout -- <file>;
    • 场景二:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令 git reset HEAD reset 就回到了场景1,第二步按场景1操作;
    • 场景三:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

    6. 删除文件

    • 确实要从版本库中删除该文件,那就用命令 git rm 删掉,并且 git commit
    • git checkout -- <file> 用版本库里的版本替换工作区的版本
  • 相关阅读:
    物联网数据卡系统源码——物联网的主要应用领域
    一张图看懂开源许可协议,开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别
    memcached对key和value的限制 memcached的key最大长度和Value最大长度
    缓存技术PK:选择Memcached还是Redis?
    .Net开源框架列表
    项目管理工具Redmine各功能测试
    DBImport V3.7版本发布及软件稳定性(自动退出问题)解决过程分享
    ASP.NET Core 折腾笔记一
    发布:.NET开发人员必备的可视化调试工具(你值的拥有)
    开源发布:VS代码段快捷方式及可视化调试快速部署工具
  • 原文地址:https://www.cnblogs.com/sufei-duoduo/p/5728694.html
Copyright © 2011-2022 走看看