1:更新: 更新后,更新只在Workspace中,没有到暂存区。git status可以查看当前状态。

git add <file>  可以放到待提交区。

        git  checkout --<file>   可以放弃更改 ,  本地的修改都会被覆盖

2: 对于已经提到待提交区的:

git   reset   HEAD   <file>    可以把文件在放回workspace。

git  commit -m   "message"   可以提交文件

3: 对于已经commit的,

git log  // 查看commit的历史记录。

git revert HEAD    // 撤销最近大一个提交

4: git diff:               //workSpace中的文件和暂存区文件的差异。

git diff HEAD~n              // workspace中的状态和REPO中的状态进行diff.

5  综上所述,   撤销更新:更新存在3个地方:  workspace,   Stage,  repo中,

A: 撤销WorkSpace中的更新:git checkout -- <file>   //这种方式已定要谨慎,撤销后找不回来

B: 撤销stage中的更新:   git reset HEAD <file>                     //   把暂存区的文件移动到workspace

git rest  --hard HEAD            //       是不可以恢复的

C:撤销repo中的更新:

git log  // 查看commit的历史记录。   git revert HEAD    // 撤销最近大一个提交

6  : q    //退出VIM模式。

7: 查看远程版本库信息

git  remote show

8: 创建分支:     git  branch develop

这个分支新建后,是在本地,如何推送到remote呢?

git push --set-upstream origin hhh

9:  切换分支:      git checkout develop

10:   列出本地分支:  git branch

列出远程分支: git branch -r

     列出所有本地和远程分支:  git branch -a

11:     git branch   branchname               //  创建新分支,但是不切换过去

git  checkout  branchname          //   切换到一个存在的分支

git checkout -b [branch]                //   创建新分支,并切换到该分支(把上两步骤合并)

12: 删除分支:

首先当前分支不是要删掉的的分支

      git branch -D   branchtodelete

git  branch   -D   -r     origin/XXX  //  删除远程分支,可以先用git branch -r  列出远程分支

13: 基于某个分支创建新分支

git branch   XXX    //  就是基于当前所在的分支创建新分支

git checkout -b   newbranch     baseBranch    //  基于basebranch创建newbranch.

14:   git  自动补全的功能

在运行 git add 和 git branch -D  的时候,按Tab键,发现有自动补全的功能

15:git stash:

git stash save -a "messeag"            //   把workspace的内容加入到stash 栈中

  git stash list       //  列出stash

Dell@DESKTOP-OSTGSI3 MINGW64 /d/eclipseWorkSpace/maven-web-sample (master)
$ git stash list
stash@{}: On master: message
stash@{}: WIP on master: be28beb toreset Dell@DESKTOP-OSTGSI3 MINGW64 /d/eclipseWorkSpace/maven-web-sample (master)
$

    git stash pop stash@{0}  //   把最近的stash内容更新到workspace, 并且从栈中删除

再执行  git stash list       //  列出stash

stash@{}: WIP on master: be28beb toreset

   git stash apply <stash@{id}>  //  与git stash pop不同的是,这个执行完后,在stash栈中不删除

   git stash drop <stash@{id}>      // 把stash中的指定的drop掉

    git stash pop      //   不指定名字,弹出最新的

16:   merge  VS   rebase:

待续

git学习4 常用命令的更多相关文章

  1. Git学习 --> 个人常用命令add,commit以及push

    Git命令行配置1 安装Github2 安装msysgit3 要配置用户名和油箱  git config --global user.name <用户名> 我的命令就是:git confi ...

  2. GIT学习笔记——常用命令

    最近使用使用GIT较多,但命令很容易就忘记了,于是整理下,大多整理与一些文档和他人博客 在当前目录新建建一个纯git代码库 $ git --bare init 在当前目录新建一个Git代码库 $ gi ...

  3. git 学习笔记(常用命令)

    1.新建一个文件,如果没有使用git add 命令将它提交到暂存区,那么这个文件就还没有被跟踪. 2.通过配置.gitignore文件可以指定要忽略的文件,被忽略的文件夹是不会被提交到暂存区的.所以这 ...

  4. Git安装以及常用命令(图文详解)

    **Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...

  5. Git的一些常用命令

    一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 简单的说就是托管代码的便于多人开发的管理系统. 二.Git的一些命令,我详细的说一下 我是基于github给大家说一下git的一些常 ...

  6. Git Bash Here常用命令以及使用步骤

    1.首先,要clone项目代码: git clone 链接地址 2.更新代码: git pull 3.添加修改过的文件.文件夹: git add 修改过的文件,文件夹 4.提交并注释: git com ...

  7. 一张图学习vim常用命令

    一张图学习vim常用命令

  8. goland学习-go常用命令使用

    goland学习-go常用命令使用 1.跨平台编译:env GOOS=linux GOARCH=amd64 go build 2.获取go第三方包:go get -u github.com/go-sq ...

  9. 学习Git过程中常用命令的总结

    复制远程库git clone git@github.com:Hconly/learngit.git在GitHub上,可以任意Fork开源仓库:自己拥有Fork后的仓库的读写权限:可以推送pull re ...

随机推荐

  1. Kubernetes TLS认证

    转自: https://mritd.me/2018/01/07/kubernetes-tls-bootstrapping-note/ 前段时间撸了一会 Kubernetes 官方文档,在查看 TLS ...

  2. 【P1369】矩形(贪心)

    蒟蒻现在连DP都做不出来了,就只能做一些XJB贪心题,这个题题目向非常友好,100的数据范围一看就是让你跑O(n^4)的做法的,然而实际上并不是那么多,大约是,额,反正要快不少. 没什么好说的,直接枚 ...

  3. 剑指Offer——圆圈中最后剩下的数(约瑟夫环)

    Question 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此.HF作为牛客的资深元老,自然也准备了一些小游戏.其中,有个游戏是这样的:首先,让小朋友们围成一个大圈.然后, ...

  4. js运算符、关键字、保留字、转义字符

  5. OpenStack企业私有云新需求(1):Nova 虚机支持 GPU

    作者:Sammy Liu 刘世民 本系列会介绍OpenStack 企业私有云的几个需求: GPU 支持 自动扩展(Auto-scaling)支持 混合云(Hybrid cloud)支持 物理机(Bar ...

  6. c++中的函数对象

    头文件wuyong.h: #pragma once #include<iostream> using namespace std; template<typename T> s ...

  7. java多线程学习二

    声明:本篇博客是本人为了自己学习保存的心得,其内容主要是从大神——五月的仓颉的博客中学习而来,在此多谢大神五月的仓颉的分享,敬礼!如有疑问请联系博主,谢谢! 本章主要记录并讲述线程在项目中常用的方法: ...

  8. mysql备份shell脚步

    #!/bin/bash  #Shell Command For Backup MySQL Database Everyday Automatically By Crontab     USER=roo ...

  9. LVM MBR分区(装载)

    必须有至少一个主分区(P),主分区个数+扩展分区个数<= 4个. 创建完主分区,可以创建扩展分区(E),扩展分区可以有1个,或者没有(扩展分区). 主分区(Primary  Partion)可以 ...

  10. SVN中如何为文件夹中的所有文件加锁

    经过一段时间的试用,发现不加锁的共享式开发还是不太方便.还是全部设置为独占式加锁,如有共享式修改需求再设置为不加锁比较好. 经过一番摸索,总结出如下的加锁方式是可行的: 注:第一步是必须的,必须完成第 ...