zoukankan      html  css  js  c++  java
  • git代码版本管理

    先看这个图,了解工作区、版本库、stage、HEAD、master、add、commit这几个概念。

    (忘记自己从哪儿盗的图了...)

    git_relearn文件夹里就是一个工作区(working directory);

    .git隐藏的文件夹就是版本库(repositary);

    版本库里包含暂存区(stage);

    git为我们自动创建的第一个分支master;

    git commit就是往分支master提交更改;

    指向master的指针是HEAD

    一.前期准备

    git config --global user.name "hdn"  #设置自己的名字

    git config --global user.email "123456@qq.com"  # 邮箱

    pwd  # 查看当前版本库所在的目录(版本库又叫仓库repository。该目录下的文件都可以被git管理起来:包括文件的删除更改等都会给git追踪)

    touch test.txt  # 创建test.txt文件

    git init  # 初始化一个git仓库(在哪个目录下git init,就是定义当前目录为git仓库repository)

    git add test.txt  #将自己创建的test.txt存入版本库的stage暂存区里

    git commit -m"create a test.txt"  # 将已经放到stage里的test.txt文件提交到master里,m后面的参数是对本次提交的文字说明。可以多次add,然后一次commit

    二.查看

    git status  # 查看仓库当前状态

    git diff test.txt  # 查看对test.txt做了什么修改

    git diff HEAD -- test.txt  # 查看test.txt当前版本的修改状态

    三.版本

    git log  # 查看修改的历史记录:从最近到最远的提交依次显示。

    git log --pretty=oneline  # 字面意思:将记录以一行的方式显示

    git reset --hard HEAD^  # 回退到上一个版本;HEAAD^^为回退到上上一个版本;HEAD~100为回退到上100个版本

    git reset --hard 4fa142c  # 4fa142c为某次修改事件A的版本号(commit ID)。对应git log命令下显示的前七位数。那么此时会回退到事件A时刻的修改记录

    git reflog  # 查看每次修改对应的版本号(commit ID)

    四.提交

    每次提交之后,工作区(working directory)就会变成clean。

    五.撤销

    git checkout --test.txt  # 撤销在工作区的修改,让这个文件回到最近一次git commit或者git add的状态

    git rest HEAD test.txt  # 回退到上一个操作。即撤销掉test.txt在stage(暂存区)的缓存(to unstage)。git reset 是回退版本,HEAD是指当前版本

    六.删除

    rm test.txt  # 删除在工作区里的test.txt文件

    git rm test.txt  # 从版本库里删除test.txt

    git commit -m"remove test.txt"  # 提交本次删除,并标记为"remove test.txt"

    git checkout -- test.txt  # 在未从版本库仅仅是从工作区删除的文件可以通过此命令恢复。即用版本库的版本文件替换工作区里的文件

  • 相关阅读:
    数组和类集排序总结
    toString()方法
    冒泡排序java
    Scanner类输入字符串和整形数字
    身份证分组
    jsonp的实质
    在伪数组上部署iterator方法
    获取属性的方法
    合并以及对于引用克隆
    深度复制对象已解决循环引用
  • 原文地址:https://www.cnblogs.com/hongdanni/p/10472847.html
Copyright © 2011-2022 走看看