工作区:就是你的工作目录

暂存区:它像个缓存区域,临时保存你的改动

版本区:就是你的git仓库

HEAD:相当于一个指针,指向你最近一次提交后的结果

git status 查看状态

git add .  添加到暂存区

git commit - m""   用于提交暂存区的文件

简写:git commit -a -m ""  用于提交跟踪过的文件,相当于git addgit commit -m的组合技

git log 查看提交历史

Git对比命令

git diff  比较的是工作目录(Working tree)和暂存区域快照(index)之间的差异

git diff --cached 和 git diff  --staged暂存区和版本区的对比

git diff master 工作区和版本区的对比

Git撤销命令

git reset HEAD <fileName>  撤销工作区到版本区状态

git checkout --<fileName> 用暂存区(如果为空,用版本区)替换工作区

git commit -m"file.html and file2.js" --amend  提交遗漏时,用于把两次提交合并为一次提交

Git删除命令

git rm <fileName> 删除暂存区的文件(当工作区存在时,无法删除该文件)

git rm -f <fileName> 把工作区和暂存区的文件都删除

git rm --cached <file.name> 只把暂存区的文件删除

Git恢复命令

git checkout <commit_id> <file.name> 还原指定版本的某个文件

git reset -- hard <commit_id>  恢复指定版本的全部文件

git reset -- hard   HEAD^   恢复最近版本的前一个版本

git reset -- hard   HEAD~<n>  恢复最近版本前的n个版本

git reflog 显示所有的恢复的历史信息,然后再利用git reset -- hard <commit_id>进行撤销

同步到远程仓库

git remote 列出已存在的分支

git remote -v 列出分支详细信息,显示其远程url

git push [remote-name] [本地分支名]  推送远程仓库

git pull [remote-name] [本地分支名]  拉取远程仓库

多人协作解决冲突

git fetch(从远端拉取后不进行合并,对比后在手动合并)

* Git diff master origin/master

* Git merge origin/master

gitpull(从远端拉取后直接进行合并)

 开源项目协作

  1.fork 开源项目(克隆一个版本到自己的仓库)

  2.pull request (提交个人修改申请)

分支

git branch  查看现有分支

git branch  [新分支名]

git checkout  [分支名]    切换分支

git checkout -b [新分支名]  创建并切换到该分支

git merge new1      将new1分支合并到当前分支

git branch --merge  查看当分支下所合并的分支

git branch --no-merge  查看与当分支没有合并的分支

git branch -d  new1 删除分支new1(未合并的分支不能直接删除)

git branch -D new2 强制删除没有合并的分支

GitHub上的分支

1.git  push origin new1  提交并在github上建立分支new1

2.在github上直接创建

github上的标签(releases)

1.git命令创建

git tag   显示已有的版本标签

git tag <v1.0>  创建版本v1.0

git push origin v1.0 提交版本V.10到github

2.github上直接创建

创建github博客

1.创建一个名为 "你的账户名.github.io"的仓库

2.在该仓库下创建一个index.html

3.通过浏览器访问你的账户名.github.io就能看到了

技巧:

git命令自动补全 借助tab键

git 命令设置别名   git config --global alias.co checkout(把checkout简化为co)

git config --list  查看配置信息

资源:

Pro.git中文版

廖雪峰Git教程

  

git常用命令和github的更多相关文章

  1. git常用命令,git版本控制和Xcode结合使用,用Xcode提交到github,github客户端使用

    1.git常用命令 查看命令: 1.git --help 查看git所有命令 2.git clone -help 查看git clone命令的细节 3.git config -l   查看当前所有配置 ...

  2. 【github&&git】4、git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  3. 把git仓库从码云迁到github,及git常用命令

    前言 刚开始建仓库的时候,因为网络的原因选择了国内的码云.后来又想换成github,毕竟平时github使用率比较高. 替换远程仓库地址方式如下: git remote set-url origin ...

  4. 【github】git常用命令和node项目

    这是之前在本地搞的一个小东西.因为之前电脑经常会很卡.后来发现任务管理器中多了两个不知名的进程:chromgpu.exe和flrefox.exe 乍一看以为和chrome和firefox两个浏览器有关 ...

  5. Git常用命令速查表 & Git Basics & github : release 发布!

    Git常用命令速查表 & Git Basics  & github : release  发布! Git常用命令速查表: 1 1 1 1 1 http://git-scm.com/bo ...

  6. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  7. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  8. Git 常用命令大全

    Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v 添加 ...

  9. GIT常用命令备忘

    Git配置 git config --global user.name "storm" git config --global user.email "stormzhan ...

随机推荐

  1. js中的封装、继承、多态

    Javascript是一门解释型的语言,是基于对象的,并不是真正的面向对象的语言,对变量类型的应用也是宽松的,其实它同样可以模拟面向对象的功能:  1 function myfun1(){  2    ...

  2. 【iOS开发-74】解决方式:Xcode6下利用preference保存数据,终于的plist文件在哪里?

    (1)现象:普通情况下.储存数据以一个沙盒为单位,preference数据存在在沙盒路径下Library/Preferences里面,可是Xcode6里找来找去根本什么都没有. watermark/2 ...

  3. 工作总结 default Console.WriteLine(default(Guid));

    泛型代码中的默认关键字 在泛型类和泛型方法中产生的一个问题是,在预先未知以下情况时,如何将默认值分配给参数化类型 T: T 是引用类型还是值类型. 如果 T 为值类型,则它是数值还是结构. 给定参数化 ...

  4. C++求解数组中出现超1/4的三个数字。

    #include <iostream> using namespace std; //求x!中k因数的个数. int Grial(int x,int k) { int Ret = 0; w ...

  5. WCC框架设计

    一个好的框架,不仅能帮助程序开发节约很多时间,同时也能减少bug的引入.这个框架是在ssy同学的基础上进行了一些改进: 主要在于一下几点(会随着项目开发逐渐更新这篇文章) 1. 应用了反射机制,实现网 ...

  6. 2015/12/30 Java语法学习

    ①标识符包括:包名.类名.方法名.变量名.常量名.属性名 标识符书写规则:1,标识符由字母.数字._.$ 组成                      2,数字不能出现在开始位置          ...

  7. 什么是sibling and tail recursive calls

    1 tail call 在函数f中调用函数b,如果这个调用是函数f中执行的最后一条指令,那么这个调用就称为tail call. 例子: int foo(float a, float b) { ... ...

  8. go语言---slice

    go语言---slice https://blog.csdn.net/cyk2396/article/details/78893420 一.数组切片的使用: //1.基于数组创建数组切片 var ar ...

  9. 51Nod 1450 闯关游戏 —— 期望DP

    题目:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1450 期望DP: INF 表示这种情况不行,转移时把不行的概率也转 ...

  10. bzoj3561

    3561: DZY Loves Math VI Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 240  Solved: 163[Submit][Sta ...