git的常用操作指令
git学习网址:
http://www.backlogtool.com/git-guide/cn/intro/intro2_3.html
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的常用操作指令的更多相关文章
- git 详细教程和常用操作指令
git 内部工作原理图 如上图,git 一般可以分为三个区:工作区.暂存区.版本库,通常类似 git add等命令都是与index 暂存区的交互,git commit指令则是 index 与版本库的交 ...
- linux常用操作指令
Linux常用操作指令: 常用指令 ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(a ...
- 《Git的常用操作》
Git的常用操作: git checkout -b 本地分支 #创建本地的分支—本地分支,并切换到该分支下. git branch --set-upstream-to=origin/远程分支 本地分支 ...
- Redis数据类型Strings、Lists常用操作指令
Redis数据类型Strings.Lists常用操作指令 Strings常用操作指令 GET.SET相关操作 # GET 获取键值对 127.0.0.1:6379> get name (nil) ...
- Redis集合的常用操作指令
Redis集合的常用操作指令 Sets常用操作指令 SADD 将指定的元素添加到集合.如果集合中存在该元素,则忽略. 如果集合不存在,会先创建一个集合然后在添加元素. 127.0.0.1:6379&g ...
- CentOS + Nginx 的常用操作指令总结
CentOS + Nginx 的常用操作指令总结 一. 关于CentOS 查看 yum 源是否存在 yum list | grep nginx 如果不存在 或者 不是自己想要的版本 可以自己设置Ngi ...
- git介绍-常用操作(一)
Table of Contents 1 系列文章 2 git说明 3 git常用命令 3.1 基本操作 3.2 远程操作 4 查看git的配置 4.1 查看已配置项 4.2 其他配置 ...
- git常用常用操作指令
GIT操作 1:git init 初始化空的仓库,会在当前文件夹生成一个隐藏.git的文件夹,相当于一个仓库. 2:提交代码的流程:工作代码区-->暂存区 -->主仓库 -->服务器 ...
- git常用操作指令
git操作master : 默认开发分支:origin : 默认远程版本库 添加远程仓库:git remote add [name] [url] 通常name为origin 克隆远程仓库:git c ...
随机推荐
- ubuntu下caffe配置
http://blog.csdn.net/yhaolpz/article/details/71375762
- 锐捷认证的一些问题&解决方法
scau锐捷校园网各种无法吐槽,认证有时候自己掉线了麻痹都打到boss了给我掉线,收费也坑爹,连铁通都比不上. 1.锐捷认证客户端已停止工作: 貌似是毒霸的问题,把金山毒霸关掉再试 2.获取ip地址信 ...
- js中“||”和“&&”的高级用法
例1:用于赋值&&:从左往右依次判断,当当前值为true则继续,为false则返回此值(是返回未转换为布尔值时的原值哦)|| : 从左往右依次判断,当当前值为false则继续,为tru ...
- API---CreateIoCompletionPort
HANDLE WINAPI CreateIoCompletionPort( __in HANDLE FileHandle, __in HANDLE Existi ...
- [UE4]Component相关常用API
http://www.dawnarc.com/2017/02/ue4component%E7%9B%B8%E5%85%B3%E5%B8%B8%E7%94%A8api/ Actor.h //获取第一个与 ...
- Light Pre-Pass 渲染器----为多光源设计一个渲染器
http://blog.csdn.net/xoyojank/article/details/4460953 作者: Wolfgang Engel, 原文: http://www.wolfgang-en ...
- How to generate a CSR in Microsoft IIS 7
How to generate a CSR in Microsoft IIS 7 To help you generate your CSR for Microsoft IIS 7 we've pre ...
- es6入门5--class类的基本用法
在ES6之前,准确来说JavaScript语言并无类的概念,却有模拟类的做法.相比在类似java这类传统面向对象语言中通过类来生成实例,js则通过构造函数模拟类来生成实例. 这是因为在JS设计初期,作 ...
- linux bg和fg命令
linux下我们如果想一个任务或者程序还后台执行可以使用&,实际上linux还提供了其他任务调度的命令. bg将一个在后台暂停的命令,变成继续执行 fg将后台中的命令调至前台继续运行 jobs ...
- codeforcesRound378C-dfs+树状数组
分成K个块,每个块内部dfs解决,然后用树状数组统计第i个元素前面有多少怪物已经消失,来计算当前的下标 #include<bits/stdc++.h> #define inf 0x3f3f ...