zoukankan      html  css  js  c++  java
  • git的相关知识

    工作区和暂存区

    工作区

    例如我们创建一个本地仓库 名字gitProject 如图,这个gitProject就是一个工作区

    版本库

    上图我们看到工作区里面还有一个目录.git,而它并不算是工作区,而是git的版本库。

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

    我们知道把修改的内容提交到git 分两步执行的  git add  和git commit

    git add把文件添加进去,就是把文件修改添加到暂存区;

    git commit提交更改,就是把暂存区的所有内容提交到当前分支。

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

    现在我们操作一下 

    下面我们在ViewController.m 中加入一个NSLog(@"!!!!!!!!!!!!!");

    查看下状态  git status

    git add . 下  然后查看下状态 

    git add . 就是将你想要提交的内容放到暂存区中

    然后git commit 下  然后查看下状态 

    清空了暂存区 提交到了分支上面

    我们对git的管理实际上就是修改,不管你做什么样的操作就是一个修改 。

    下面我们看下 git checkout -- gitProject/gitProject/ViewController.m 

    cat gitProject/gitProject/ViewController.m
    查看ViewController.m 内容 如图

     
    然后我们添加一行  NSLog(@"?????????");

    cat gitProject/gitProject/ViewController.m 查看文件内容如图
    git checkout --  gitProject/gitProject/ViewController.m   就是把文件在工作区的修改全部撤销,让这个文件回到最近一次git commitgit add时的状态。
    然后我们看看git checkout -- 之后的文件内容 


    文件内容果然复原了。

    git checkout -- file 是撤销,如果没有--,就变成了切换到另一个分支的命令了

    然后 我们看下 git reset HEAD <file>  这个命令可以把你add 到暂存区的修改撤销掉 

    git add . 之后  执行 git reset HEAD /gitProject/gitProject/ViewController.m  

    然后git commit 后会提示没有可提交的内容

    下面讲讲删除文件

    例如 现在创建一个ssss.h 和ssss.c 文件  然后提交到仓库

    1 我们可以直接去仓库目录下吧你想删除的文件给删除了  然后 提交下 

    2 或者用命令行 git rm 文件名  然后提交

    但是如果你发现删错了,只要咱们版本库里面还有,我们就可以把误删的文件恢复到最新版本:使用

    git checkout -- gitProject/gitProject/ViewController.m

    参考
     https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013758392816224cafd33c44b4451887cc941e6716805c000
  • 相关阅读:
    前端技术-PS切图
    Html5资料整理
    Html5知识体系
    Html知识体系
    C语言知识结构
    ASP.NET知识结构
    src和href的区别
    Ajax的简单使用
    学习理论
    求模运算法则
  • 原文地址:https://www.cnblogs.com/lvhongjian/p/9811322.html
Copyright © 2011-2022 走看看