zoukankan      html  css  js  c++  java
  • git常用命令

    对git的命令进行了个简单的总结,以防忘记某个命令的时候回来找找。

    git config:列出config命令下的子命令

    git config global user.name "":设置全局变量user.name

    git config global user.email "";设置全局变量user.email

    git config -l或者git config --ls:列出config下已经设置好的变量

    git log:查看当前仓库的历史纪录

    git status:查看当前working directory的状态

    git status -s:简化的git status命令

    git的三个状态:

    git add hello.py:将 hello.py从working directory提交到staging area.

    git clone http://:

    git rm hello.py:删除working directory与staging area中hello.py文件。

    git rm --cached hello.py:删除staging area中hello.py文件。注:staging area 也叫cache或者index

    git mv hello.py hello.txt:重命名working directory与staging area中hello.py文件。相当于下面三个操作:

    git rm --cached hello.py -> mv hello.py hello.txt -> git add hello.txt

    git commit -m '':提交staging area到repository(history)。

    git commit -am '':提交working directory到staging area和repository(history)。

    git stash:将当前杂乱的working directory中的文件放到 抽屉中,后期可以取出来进行展开。注:这时,working directory,staging area与repository(history)保持一致,还原到最初的状态。

    git stash list:将被放到 抽屉 中的working directory列出来。

    git stash pop:展开 抽屉 中的working directory,恢复到 抽屉 中的working directory状态。

    git diff:查看working directory与staging area的区别。

    git diff --staged:查看staging area与repository(history)的区别。

    git diff HEAD:working directory与repository(history)的区别。

    git diff --stat HEAD:对命令git diff HEAD进行简化

    git reset hello.py:用repository(history)的文件来覆盖staging area的文件,达到回滚staging area的目的。

    git checkout hello.py:用staging area的文件来覆盖working directory的文件,达到回滚working directory的目的。

    git checkout HEAD hello.py:用repository(history)的文件来覆盖working directory的文件,达到回滚working directory的目的。

    git commit -a -m 'add file' hello.py或者git commit -am 'add file' hello .py:从working directory直接提交到 repository(history)。注:hello.py必须已经受版本控制的文件,即在之前此文件已经进行过git add的操作。

    下面的命令是针对 history(repository)区域的:

     history(repository)区域存储的是n个commit对象,每个commit对象又包含两部分,1.tree:此版本下的所有文件,以树的形式,2.parent:指针,指向前一个commit对象。

    git cat-file -t HEAD(也可以是commit对象的hashcode):列出HEAD指向的commit对象。即查看HEAD的类型

    git cat-file -p HEAD(也可以是commit对象的hashcode):直接打开HEAD指向的commit对象。

    git log --oneline:输出git的日志,每次改动以一行的形式。

    git rev-parse HEAD:查看HEAD指向的hash码。

    git rev-parse HEAD~4:查看从HEAD开始(不包含HEAD),倒数第4个指向的hash码。

    git rev-parse master~4:查看从HEAD开始(不包含HEAD),倒数第4个指向的hash码。与  HEAD~4 相同

    git rev-parse HEAD~4^{tree}:查看HEAD~4中,第一个tree的hashi值。

    git rev-parse HEAD~4:hello.py:查看HEAD~4中,hello.py的hashi值。

    git cat-file -p HEAD~4:hello.py:  查看HEAD~4中,hello.py的内容。

    git show HEAD~4:hello.py: 查看HEAD~4中,hello.py的内容。等同于上一个命令。

    查看history中的命令,叫做tree-ish.

    分支相关:

    git branch:查看当前仓库的分支。

    git branch b1:创建一个名字叫b1的新分支。

    git checkout b1:将当前工作的master分支切换到b1.

    git checkout -b b1:创建一个名字叫b1的新分支并且切换到此分支下。

    git branch -d b1:删除b1分支。

    git merge b1:将b1合并到master分支上

    分支相关目录:仓库下面,.git/HEAD,  .git/refs/master。

    待续---

  • 相关阅读:
    【转】Linux中的特殊权限粘滞位(sticky bit)详解
    【转】Spark实现行列转换pivot和unpivot
    Pyspark 使用 Spark Udf 的一些经验
    CDH 集群机器上部署 Jupyter notebook 使用 Pyspark 读取 Hive 数据库
    Pyspark-SQL 官方 API 的一些梳理(上)
    Kafka-python 客户端导致的 cpu 使用过高,且无法消费消息的问题
    如何创建和管理 MySQL 相关权限
    CDH Yarn 调度资源指南
    Sqoop export(Hive to MySQL) 的一些 reference
    vue2.x学习笔记(二十七)
  • 原文地址:https://www.cnblogs.com/westward/p/5770846.html
Copyright © 2011-2022 走看看