Git学习总结(10)——git 常用命令汇总
1.git 基本概念:
- 工作区:改动(增删文件和内容)
- 暂存区:输入命令:git add 改动的文件名,此次改动就放到了‘暂存区’(新增的文件)
- 本地仓库(简称:本地):输入命令:git commit 此次修改的描述,此次改动就放到了’本地仓库’,每个commit,我叫它为一个‘版本’。
- 远程仓库(简称:远程):输入命令:git push 推送到远程仓库,此次改动就放到了‘远程仓库’ git pull 拉去远程仓库
- commit-id:输出命令:git log,最上面那行commit xxxxxx,后面的字符串就是commit-id
2.工作区和暂存区的常用命令:
- 展示工作区和暂存区的不同(输出工作区和暂存区的different(不同)。)
- git diff
- 还可以展示本地仓库中任意两个commit之间的文件变动:
- git diff <commit-id>
<commit-id> - 两个分支的差异:
- git diff <branch
a> <branch b> - 放弃工作区的修改
- git checkout <file-name>
- 放弃所有修改:
- git checkout .
- 强制删除untracked的文件
- git clean <file-name>
-f - 强制删除untracked的目录
- git clean <directory-name>
-df - 展示所有tracked的文件
- git ls-files -t
- 展示所有untracked的文件
- git ls-files --others
3.有关commit的一些常用命令:
- 查看commit历史
- git log
- 重设第一个commit(也就是把所有的改动都重新放回工作区,并清空所有的commit,这样就可以重新提交第一个commit了)
- git update-ref
-d HEAD - 回到某个commit的状态,并删除后面的commit (但不丢弃更改)
- git reset <commit-id>
- 回到某个commit的状态(丢弃更改)
- git reset —hard
<commit-id> - 修改上一个commit的描述
- git commit --amend
- 展示简化的commit历史
- git log --pretty=oneline
--graph --decorate --all - 在commit log中查找相关内容
- git log --all --grep='<text>'
- commit历史中显示Branch1有的,但是Branch2没有commit
- git log Branch1
^Branch2
4.关于分支管理的一些常用命令:
- 快速切换分支
- git checkout -
- 创建并切换到该分支
- git checkout -b
<branch-name> - 查看本地分支:
- git branch
- 查看所有分支
- git branch -a
- 重命名本地分支:
- git branch -m <branch-oldName>
<branch-newName> - 删除远程分支
- git push origin
--delete <remote-branchname> - git push origin
:<remote-branchname> - 关联远程分支(关联之后,git branch -vv就可以展示关联的远程分支名了,同时推送到远程仓库直接:git push,不需要指定远程仓库了。)
- git branch -u origin/mybranch
- 展示任意分支某一文件的内容
- git show <branch-name>:<file-name>
- 新建并切换到新分支上,同时这个分支没有任何commit
- git checkout --orphan
<branch-name>
5.关于git中标签的一些常用命令:
- tag就像是一个里程碑一个标志一个点,branch是一个新的征程一条线;
- tag是静态的,branch要向前走;
- 稳定版本备份用tag,新功能多人开发用branch。
- 查看标签
- git tag
- 本地创建标签
- git tag <version-number>
- 默认tag是打在最近的一次commit上,如果需要指定commit打tag:
- git tag -a <version-number>
-m "v1.0 发布(描述)" <commit-id> - 推送标签到远程仓库(首先要保证本地创建好了标签才可以推送标签到远程仓库)
- git push origin
<local-version-number> - 删除本地标签
- git tag -d <tag-name>
- 删除远程标签(删除远程标签需要先删除本地标签,再执行下面的命令)
- git push origin
:refs/tags/<tag-name>
6.关于git中stash的一些常用命令:
- 存储当前的修改,但不用提交commit
- git stash
- 保存当前状态,包括untracked的文件
- git stash -u
- 展示所有stashes
- git stash list
- 回到某个stash的状态
- git stash apply
<stash@{n}> - 回到最后一个stash的状态,并删除这个stash
- git stash pop
- 删除所有的stash
- git stash clear
- 从stash中拿出某个文件的修改
- git checkout <stash@{n}>
-- <file-path>
Git学习总结(10)——git 常用命令汇总的更多相关文章
- Git的使用流程及常用命令汇总
Git是一个很好用的版本控制系统,本文对于常用的一些命令进行了汇总. 创建一个存储仓库(repository) https://github.com/右上角点击"+"号,New r ...
- Git笔记:Git介绍和常用命令汇总
Git 是一个开源的分布式版本控制系统,与 CVS, Subversion 等不同,它采用了分布式版本库的方式,不需要服务器端软件支持. 工作流程 Git 的工作流程大致如下: 克隆 Git 资源作为 ...
- Git深入浅出使用教程:Git安装、远程控制、常用命令(全)
一.软件安装 1.先安装[Git-2.24.1.2-64-bit.exe]软件.(官网下载的很慢,可以在百度云盘下载我的) 链接:https://pan.baidu.com/s/1uoIS9DWSBp ...
- 20145222《信息安全系统设计基础》Linux常用命令汇总
学习Linux时常用命令汇总 通过Ctrl+f键可在该网页搜索到你想要的命令. Linux中命令格式为:command [options] [arguments] //中括号代表是可选的,即有些命令不 ...
- Oozie命令行常用命令汇总[转]
Oozie命令行常用命令汇总 有时候脚本跑多了就不愿意在OozieWeb端去看脚本的运行情况了.还好Oozie提供了很多命令行命令.能通过命令行直接检索自己想看到的脚本信息.在这里简单进行一下总结.一 ...
- vim常用命令汇总
vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...
- 【Linux】Linux 常用命令汇总
查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpk ...
- [svc][op]vim常用命令汇总
vim常用命令汇总: 定位 本行第一个字符 ctrl+$ 本行最后一个字符 0gg 文章首行 ctrl+G 文章行尾 u 撤销(Undo) 删除 D 从当前位置删除到行尾 ("d$" ...
- Git学习系列之Git基本操作拉取项目(图文详解)
前面博客 Git学习系列之Git基本操作推送项目(图文详解) 当然,如果多人协作,或者多个客户端进行修改,那么我们还要拉取(Pull ... )别人推送到在线仓库的内容下来. 大神们是不推荐使用 pu ...
随机推荐
- 【ACM-ICPC 2018 南京赛区网络预赛 L】Magical Girl Haze
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 定义dis[i][j]表示到达i这个点. 用掉了j次去除边的机会的最短路. dis[1][0]= 0; 在写松弛条件的时候. 如果用 ...
- 基本SQL查询
当在数据库的表中存入数据后,就可以查询这些已经存入的数据.下面学习基本SQL查询 本节要点: l 如何使用select语句 Select语句的语法 SELECT语句中的运算 使用DISTINCT和U ...
- 多个API接口
青云客智能聊天机器人API 为保证接口稳定,API接口正式启用 api.qingyunke.com,www.qingyunke.com 如何更换API接口地址? 答:如果您的API接口是用在微信公众号 ...
- html 页面刷新
JS 脚本 方法1 setInterval 函数 定时局部刷新用到jQuery里面的setInterval方法, 该函数每隔一段时间请求一次数据,然后将请求结果返回给前端HTML实现刷新. setIn ...
- [Android中级]使用Commons-net-ftp来实现FTP上传、下载的功能
本文属于学习分享,如有雷同纯属巧合 利用业余时间.学习一些实用的东西,假设手又有点贱的话.最好还是自己也跟着敲起来. 在android上能够通过自带的ftp组件来完毕各种功能.这次是由于项目中看到用了 ...
- memcached—向memcached中保存Java实体需注意的问题
今天以代码实例的形式总结一下向memcached中保存Java实体需注意的问题: memcached工具类代码: package com.ghj.packageoftool; import java. ...
- js保留两位小数的解决的方法
var a = 123.456; a = a..toFixed(2); alert(a);//结果:123.46
- MySQL具体解释(8)----------MySQL线程池总结(二)
这篇文章是对上篇文章的一个补充,主要环绕下面两点展开.one-connection-per-thread的实现方式以及线程池中epoll的使用. one-connection-per-thread 依 ...
- tcpdump dns流量监控
tcpdump监听数据 为了看清楚DNS通信的过程,下面我们将从主机1:192.168.0.141上运行host命令以查询主机www.jd.com对应的IP地址,并使用tcpdump抓取这一过程中LA ...
- 数据格式与数据类型(Content-Type)
常见数据类型: 文本文件: 二进制文件: 编码后的图像文件: jpeg png 网络中爬取的数据: 1. Content-Type Media Types Type text text/css tex ...