git学习网址:

http://www.backlogtool.com/git-guide/cn/intro/intro2_3.html

廖雪峰的git教程

git的工作区和暂存区(描述git的工作流)

git init:初始化git仓库

git add <filename>:添加文件到仓库,可反复多次使用,添加多个文件;

git commit -m '描述': 提交文件到仓库

git status:查看工作区仓库中的文件状态

git diff <filename>:查看某文件修改了哪些地方

git log: 查看当前工作区所有的提交记录,从上到下由最近提交到最远提交(显示为竖向展示比较长,不便于查看)

示例图如下:

git log --pretty=oneline:查看当前工作区所有的提交记录,从上到下由最近提交到最远提交(每一条记录为横向展示,便于查看,commit_id提交的版本号  提交日志)

示例图如下:

git reset --hard <commit_id>:git log或者git reflog查看日志记录得到commit_id提交的git版本号,就可以使用此命令在git的各个版本直接自由穿梭

穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

示例图如下:

git reflog:查看命令历史(要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本)

示例图如下:(现在我又要从当前版本回到之前创建index.html那个版本,就需要通过git reflog查看命令历史得到创建index.html那个版本的版本号,然后使用git reset --hard <commit_id>回到那个版本)

git checkout -- <filename>:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,checkout的文件与版本库中最新版本的文件内容一致

git reset HEAD <filename>:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想回到暂存区无此文件时,使用此命令后,工作区仍然有此修改,可使用git checkout -- <filename>命令回到与版本库最新版本文件内容一致

git rm <filename>:git删除文件

git log --graph --pretty=oneline --abbrev-commit:图示形式展示log日志

git branch:查看分支,http://blog.csdn.net/xiruanliuwei/article/details/6919319

git branch -d <branchname>:删除分支

git checkout -b <branchname>:创建并切换到当前新建分支

git checkout -b <branch-name> origin/<branch-name>:在本地创建和远程某分支对应的分支,本地和远程分支的名称最好一致;

git branch -D <name>:强行删除分支,当新建的分支有修改提交的内容,但并未进行合并时,需要使用此命令进行强制删除

git clone:从远程服务器下载文件,相当于svn的checkout

git push origin <branchName>:上传本地修改的文件,推送需要指定本地分支,相当于svn的commit

git pull <远程主机名> <分支名>:相当于是从远程获取最新版本并merge到本地,相当于git fetch和git merge的组合

git fetch <远程主机名> <分支名>:相当于是从远程获取最新版本到本地,不会自动merge,http://www.yiibai.com/git/git_fetch.html

git merge <分支名>:切换到需要合并到的分支上,使用此命令合并分支,将其他分支上的内容合并到一起

git stash:使用此命令将会清除当前工作区的修改内容,git status将会看不到修改的内容,并且备份当前的工作区到stash list中,未完成不想修改但是又不得不切换到别的分支的时候,可以先git stash相当于备份,http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137602359178794d966923e5c4134bc8bf98dfb03aea3000

git stash list:查看备份工作区的备份

git stash apply <stashNum>:恢复工作区的备份,但工作区的备份不会被删除,需要使用命令:git stash drop来删除

git stash pop:恢复并删除工作区的备份

在做测试的时候,使用git clone将github上的项目下下来,修改之后再传上去的时候,提示everything up-to-date,解决方法参考此文档:http://www.cnblogs.com/sminocence/p/6546891.html

git的常用操作指令的更多相关文章

  1. git 详细教程和常用操作指令

    git 内部工作原理图 如上图,git 一般可以分为三个区:工作区.暂存区.版本库,通常类似 git add等命令都是与index 暂存区的交互,git commit指令则是 index 与版本库的交 ...

  2. linux常用操作指令

    Linux常用操作指令: 常用指令 ls        显示文件或目录 -l           列出文件详细信息l(list) -a          列出当前目录下所有文件及目录,包括隐藏的a(a ...

  3. 《Git的常用操作》

    Git的常用操作: git checkout -b 本地分支 #创建本地的分支—本地分支,并切换到该分支下. git branch --set-upstream-to=origin/远程分支 本地分支 ...

  4. Redis数据类型Strings、Lists常用操作指令

    Redis数据类型Strings.Lists常用操作指令 Strings常用操作指令 GET.SET相关操作 # GET 获取键值对 127.0.0.1:6379> get name (nil) ...

  5. Redis集合的常用操作指令

    Redis集合的常用操作指令 Sets常用操作指令 SADD 将指定的元素添加到集合.如果集合中存在该元素,则忽略. 如果集合不存在,会先创建一个集合然后在添加元素. 127.0.0.1:6379&g ...

  6. CentOS + Nginx 的常用操作指令总结

    CentOS + Nginx 的常用操作指令总结 一. 关于CentOS 查看 yum 源是否存在 yum list | grep nginx 如果不存在 或者 不是自己想要的版本 可以自己设置Ngi ...

  7. git介绍-常用操作(一)

    Table of Contents 1  系列文章 2  git说明 3  git常用命令 3.1  基本操作 3.2  远程操作 4  查看git的配置 4.1  查看已配置项 4.2  其他配置 ...

  8. git常用常用操作指令

    GIT操作 1:git init 初始化空的仓库,会在当前文件夹生成一个隐藏.git的文件夹,相当于一个仓库. 2:提交代码的流程:工作代码区-->暂存区 -->主仓库 -->服务器 ...

  9. git常用操作指令

    git操作master : 默认开发分支:origin : 默认远程版本库 添加远程仓库:git remote add [name] [url]  通常name为origin 克隆远程仓库:git c ...

随机推荐

  1. Silverlight 5 系列学习之一

    最近公司要用Silverlight 开发并且使用了5 ,以前只学过WPF 没看过Silverlight ,不过在争光中国看了看其概念原来如此.它只不过是轻量级的WPF,且目标在于跨浏览器及平台.费话少 ...

  2. 转:在Linux上安装ant环境

    1.从http://ant.apache.org 上下载tar.gz版ant 2.复制到/usr下 3.tar -vxzf apahce-ant-1.9.2-bin.tar.gz  解压 4.chow ...

  3. 1、scala安装和基本语法

    一.安装Scala 1.安装 因为Scala是基于Java虚拟机,也就是JVM的一门编程语言. 所有Scala的代码,都需要经过编译为字节码,然后交由Java虚拟机来运行. 所以Scala和Java是 ...

  4. 在多台手机上批量安装apk

    1.手机要打开adb调试 2.该程序可以实现台android手机的多个apk批量安装 1.getSeriaoNum.py模块,该模块获取已连接手机的序列号 import os import threa ...

  5. zookeeper原理与实践(一)----zookeeper的基本功能

    我们现在围绕两个问题来学习zookeeper: 什么是zookeeper? zookeeper基础知识 什么是zookeeper: zookeeper是hadoop下面的一个子项目,是一个分布式协调服 ...

  6. 如何使用jmeter连接数据库并提取数据库中的值作为参数,与响应信息中提取的值进行比较

    思路: 连接数据库 获取数据库返回的数据 获取接口返回的数据 两者返回数据进行对比验证 连接数据库 1.jmeter要链接mysql数据库,首先得下载mysql jdbc驱动包(注:驱动包的版本一定要 ...

  7. girdspec实现画布

    对于简单的画布可以很轻松的使用subplot解决,可是对于一些复杂的画布比如下面的这个 就不易使用subplot解决,这是就需要subplot的扩展版gridspec 构造函数GridSpec(nro ...

  8. Ext.apply(src,apply) 和 Ext.applyIf(src,apply)比较(转)

    Ext.onReady(function(){ /* * Ext.apply(src,apply) 和 Ext.applyIf(src,apply) 两个方法的使用和区别比较 */ //Ext.app ...

  9. 动态生成navmeshi-进击的新版NavMesh系统:看我飞檐走壁

    http://forum.china.unity3d.com/thread-25421-1-1.html0x00 前言 unity5.6作为Unity5最后的一个版本,的确起到了一个承上启下的作用.除 ...

  10. Centos7.x 安装 pptp

    VPN 1:检查是否支持PPTP #返回OK && echo ok ok 2:安装ppp yum install -y ppp 3:导入EPEL源 rpm -ivh http://dl ...