一、本地代码增,删,改,查,提交,找回
git checkout .                //抛弃工作区所有修改
git checkout -- <file>    //抛弃工作区<file>文件的修改

git add <file>               // 将本地工作区<file>文件修改提交到本地暂存区
git add .                       // 将本地工作区所有修改提交到本地暂存区

git rm <file>                // 从版本库中删除文件

git reset <file>            // 将<file>文件从暂存区恢复到工作区
git reset -- .                // 将所有文件从暂存区恢复到工作区

git commit --amend     // 修改最后一次提交记录
git commit -m '说明'     // 从暂存区提交到代码库

git revert <$id>          // 回滚到某次提交的状态,同时创建新的提交
git revert HEAD           // 回滚到最后一次提交的状态

二、查看文件diff
git diff <file>              // 比较工作区<file>文件和暂存区<file>文件差异
git diff                        // 比较工作区所有文件和暂存区差异

git diff --staged           // 比较暂存区和版本库差异
git diff --cached           // 比较暂存区和版本库差异

三、提交记录log
git log --stat               //查看提交简介
git log -p -2                // 查看最近两次详细修改内容的diff
git log -p <file>          // 查看每次详细修改内容的diff

四、Git 本地分支管理
查看、切换、创建和删除分支
git branch -r                    // 查看远程分支
git branch <new_branch> // 本地创建新的分支
git branch -v                    // 查看各个分支最后提交信息
git merge <branch>         // 将branch分支合并到当前分支

五、Git暂存管理
git stash                    // 暂存
git stash list               // 列所有stash
git stash apply            // 恢复暂存的内容
git stash drop             // 删除暂存区

六、Git远程分支管理
git pull                           // 抓取远程仓库所有分支更新并合并到本地
git fetch origin                // 抓取远程仓库更新
git merge origin/master   // 将远程主分支合并到本地当前分支

git push                                  // push所有分支
git push origin master              // 将本地主分支推到远程主分支
git push -u origin master          // 将本地主分支推到远程(如无远程主分支则创建,用于初始化远程仓库)
git push origin <local_branch> // 创建远程分支, origin是远程仓库名

七、Git远程仓库管理
git remote -v                        // 查看远程服务器地址和仓库名称
git remote show origin          // 查看远程服务器仓库状态
git remote add origin git@ github:robbin/robbin_site.git // 添加远程仓库地址
git remote set-url origin git@ github.com:robbin/robbin_site.git // 设置远程仓库地址(用于修改远程仓库地址)
git remote rm <repository>  // 删除远程仓库

创建远程仓库
git push -u origin master // 客户端首次提交

八、日常使用git流程
git status //查看工作区的修改状态
git pull
git add .
git commit -m '说明'
git push 或者 git push origin master

九、git push简介:

git push的命令结构为 git push <远程主机名> <本地分支名> <远程分支名>
例如 git push origin master:refs/for/master 即是将本地的master分支推送到远程主机origin上的对应master分支,origin 是远程主机名,第一个master是本地分支名,第二个master是远程分支名。

git push常用命令解释:
git push origin master
将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建
git push origin :refs/for/master
表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支,等同于 git push origin --delete master
git push origin
将当前分支推送到origin主机的对应分支
git push
如果当前分支只有一个远程分支,那么主机名都可以省略,形如 git push,可以使用git branch -r ,查看远程的分支名

参考文章:
Git push常见用法:http://www.cnblogs.com/qianqiannian/p/6008140.html
Git 常用命令 :http://www.cnblogs.com/cspku/articles/Git_cmds.html

Git命令学习笔记的更多相关文章

  1. git的学习笔记(二):git远程操作

    1.创建ssh key ssh-keygen -t rsa -C "your_email@example.com" 执行命令后会在用户的家目录生成.ssh的隐藏文件夹,文件夹里有公 ...

  2. TCP/IP协议学习之实例ping命令学习笔记

    TCP/IP协议学习之实例ping命令学习笔记(一) 一. 目的为了让网络协议学习更有效果,在真实网络上进行ping命令前相关知识的学习,暂时不管DNS,在内网中,进行2台主机间的ping命令的整个详 ...

  3. linux基础命令学习笔记(二)

    linux基础命令学习笔记(二) 1.kill :终止进程  kill pid (唯一标示一个进程) kill -9  强制终止  kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...

  4. 【Redis数据库】命令学习笔记——发布订阅、事务、脚本、连接等命令汇总

    本篇基于redis 4.0.11版本,学习发布订阅.事务.脚本.连接的相关命令. Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. 序号 ...

  5. 【Redis】命令学习笔记——列表(list)+集合(set)+有序集合(sorted set)(17+15+20个超全字典版)

    本篇基于redis 4.0.11版本,学习列表(list)和集合(set)和有序集合(sorted set)相关命令. 列表按照插入顺序排序,可重复,可以添加一个元素到列表的头部(左边)或者尾部(右边 ...

  6. 【Redis】命令学习笔记——哈希(hash)(15个超全字典版)

    本篇基于redis 4.0.11版本,学习哈希(hash)相关命令. hash 是一个string类型的field和value的映射表,特别适合用于存储对象. 序号 命令 描述 实例 返回 HSET ...

  7. 【Redis】命令学习笔记——字符串(String)(23个超全字典版)

    Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). 本篇基于redis 4.0.11版本,学习字符串( ...

  8. 【Redis】命令学习笔记——键(key)(20个超全字典版)

    安装完redis和redis-desktop-manager后,开始学习命令啦!本篇基于redis 4.0.11版本,从对键(key)开始挖坑! 准备工作,使用db1(默认db0,由于之前练习用db0 ...

  9. Linux命令学习笔记目录

    Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...

随机推荐

  1. duilib入门简明教程 -- 界面布局(9)

        上一个教程实现的标题栏代码中,并没有看到处理自适应窗口大小的代码,但是窗口大小变化后,按钮的位置会跟着变化,这是因为我们将按钮放到了HorizontalLayout.VerticalLayou ...

  2. 如何快速解决myeclipse中导入jquery文件的报错。

    如何快速解决myeclipse中导入jquery文件的报错. 解决: 选中错误的文件, 点击右键, 选中myeclipse,点击Exclude From Validation.

  3. SQL Data Base 不装oracle客户端连接oracle服务端

    SQL Data Base  不装oracle客户端连接oracle服务端 一.直连: devart 二.拷贝dll: Oracle.DataAccess.dlloci.dllociw32.dll

  4. Sublime text3!行首,行尾,批量编辑!

    1.Windows下的操作操作步骤 1.Ctrl + H 2.打开正则,输入^,然后Find All,查找所有的行首 3.打开正则,输入$,然后Find All,查找所有的行尾 4.光标闪动,就可以进 ...

  5. 在Python程序中调用Java代码的实现

    <原创不易,转载请标明出处:https://www.cnblogs.com/bandaobudaoweng/p/10785766.html> 前言 开发Python程序,需求中需要用到Ja ...

  6. memcached服务

    介绍 它是一套数据缓存系统或软件 用于动态应用系统中缓存数据库的数据,减少数据库的访问压力,达到提升性能的效果,实际应用环境中多用于数据库的cache的应用.它是通过预分配指定的内存空间来存储数据 定 ...

  7. [AIR] 与本地进程(应用程序)进行通讯

    毫不夸张的说,此功能可以将Windows命令行程序(cmd.exe)通过AIR应用封装起来,并指挥它做任何你想做的事情 AIR2.0及以上与本地进程的交互主要体现在以下几方面: 启动进程并提供初始参数 ...

  8. ArchLinux 下 virtualbox 报错 libQtCore.so.4: cannot open shared object file

    VirtualBox: supR3HardenedMainGetTrustedMain: dlopen("/usr/lib/virtualbox/VirtualBox.so",) ...

  9. flink学习笔记:DataSream API

    本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...

  10. linux用到的命令

    命令行下利用别名打开ss以及设置相关代理(写到~/.bashrc中使永久有效) #open proxy alias proxystart='gsettings set org.gnome.system ...