git使用的常见命令汇总
git的简单介绍
git是分布式版本控制工具
git 的基本操作指令
git的初始化操作
git init
初始化git仓库
git add 文件名
git add .
把文件 添加到 git 暂存区中
git status
查看git 的状态
出现红色说明有文件,修改了但还没提交到暂存区
git diff
查看修改了哪些文件 增加了哪些行,删除了那些行
git diff --cached
查看修改了那些文件
查看的是修改是暂存区的修改和修改了但未暂存之间的对比
git commit -m “文字描述”
将暂存区的数据提交到本地仓库
git rm -f
强制删除 暂存区中的 文件 (会把文件从磁盘一并删除) 有数据,但更改的数据还没放到本地仓库
git rm 文件名
删除文件(会把文件从磁盘一并删除) 暂存区数据已经提交到本地仓库
git rm --cached 将数据从仓库中删除(或)暂存区中删除,但不会删除磁盘的文件
cached 缓存
git log
查看 git 的 版本提交信息
git mv README.md README
对文件进行改名操作
取消工作区做的修改,让工作区的文件和暂存区的文件内容一样,消除git diff的差异
git checkout -- CONTRIBUTING.md
将已提交到暂存区的文件撤销为未暂存状态
git reset HEAD CONTRIBUTING.md
使用git status 就可以查看下面操作的可选命令
git reset --hard commit号
返回上一个提交的版本
git的分支
git checkout -b dev
创建并切换dev分支
git branch dev 创建dev分支
git branch
查看当前所属分支
git checkout master 切换到master分支
git merge dev 合并分支
合并后就有dev分支上提交的版本信息
git branch -d dev
删除dev分支
合并冲突问题
先创建一个dev分支 提交
然后再切换回master分支,再提交
且2个提交的分支都修改了同一个文件
然后把dev分支合并到master分支上,产生冲突
分支切过来是看不到的
git远程仓库操作
git push origin 分支名
当分支推送到远程
得推送工作分支上去才行
推送主分支不行的
git push origin 分支名 --force
强推 嘿嘿
git clone “仓库地址”
把仓库下载到本地
跟踪远程分支 跟踪完 直接 git push 就可以了
git pull origin 分支名
把远程的分支拉取到本地
拉下来后,如果远程分支已经做了修改,它就会自动同步远程的代码,并提交一次commit 向本地仓库
git branch --set-upstream-to=origin/smart smart
本地的smart分支跟踪远程的smart分支
git 撤销提交的 commit 操作
写完代码后,我们一般这样
git add .
//添加所有文件
git commit -m
"本功能全部完成"
执行完commit后,想撤回commit,怎么办?
这样凉拌:
git reset --soft HEAD^
这样就成功的撤销了你的commit
注意,仅仅是撤回commit操作,您写的代码仍然保留。
说一下个人理解:
HEAD^的意思是上一个版本,也可以写成HEAD~1
如果你进行了2次commit,想都撤回,可以使用HEAD~2
至于这几个参数:
--mixed
意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
--soft
不删除工作空间改动代码,撤销commit,不撤销git add .
--hard
删除工作空间改动代码,撤销commit,撤销git add .
注意完成这个操作后,就恢复到了上一次的commit状态。
顺便说一下,如果commit注释写错了,只是想改一下注释,只需要:
git commit --amend
此时会进入默认vim编辑器,修改注释完毕后保存就好了
git使用的常见命令汇总的更多相关文章
- Git笔记:Git介绍和常用命令汇总
Git 是一个开源的分布式版本控制系统,与 CVS, Subversion 等不同,它采用了分布式版本库的方式,不需要服务器端软件支持. 工作流程 Git 的工作流程大致如下: 克隆 Git 资源作为 ...
- git使用的常见命令(一)
.查看当前有哪些branch git branch 其中有*选中的分支是你的当前使用的分支 .新建一个分支 git branch dev_xiaoming .切换到一个分支 git checkout ...
- git笔记(2)-常见命令的使用(详解待续)
1. 常用命令 (1)git --help 帮助命令,其他的类似 (2)git branch 查看分支及其他(创建分支,查看远程分支名称等) (3)git checkout 切换分支以及其他 (3)g ...
- 小白笔记:Git入门之常见命令
安装 这里就不介绍安装了,度娘一大堆,找不到可以去找谷爹(前提是你能找到).安装好就跟着笔记进行下一步 准备工作 首先我们需要一个可以 git 的东西,所以我们需要一个文件夹和一个文件 创建文件夹 t ...
- git的一些常见命令
一.新建代码库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-name] # 下载一个项目和它的整个代码 ...
- GCC常见命令汇总
int main() { test(); } man.c如上: #include <stdio.h> void test() { printf("test\n"); } ...
- Linux常见命令汇总
1.rz sz上传下载 若未安装使用:yum install lrzsz 安装 上传: rz 覆盖上传: rz -y 下载: sz bbb.jpg
- 最常见的 Git 问题和操作清单汇总
最常见的 Git 问题和操作清单汇总 引言 本文整理自工作多年以来遇到的所有 Git 问题汇总,之前都是遗忘的时候去看一遍操作,这次重新整理了一下,发出来方便大家收藏以及需要的时候查找答案. 一.必备 ...
- windows下使用Git命令汇总
这里只是简单汇总下Git主要命令,方便记忆:汇总的不好,请各位包容,谢谢!想看详细讲解,推荐廖雪峰大神的教程,地址如下:http://www.liaoxuefeng.com/wiki/00137395 ...
随机推荐
- 初识Contiv
Contiv是一个用于跨虚拟机.裸机.公有云或私有云的异构容器部署的开源容器网络架构.作为业界最强大的容器网络架构,Contiv具有2层.3层.overlay和ACI模式,能够与思科基础设施进行本地集 ...
- 开发API整理(转)
附送一个 android 源码 查看地址 http://grepcode.com/project/repository.grepcode.com/java/ext/com.google.android ...
- Struts2 基于XML校验(易百教程)
以下是的各类字段级和非字段级验证在Struts2列表: date validator: <field name="birthday"> <field-valida ...
- struts2中的数据类型自动转换
参考:https://blog.csdn.net/qq_35326718/article/details/72453042 https://www.cnblogs.com/aigeileshei/p/ ...
- ASP.NET MVC API与JS进行POST请求时传递参数 -CHPowerljp原创
在API前添加 [HttpPost] 表示只允许POST方式请求 [HttpPost] public IHttpActionResult Get_BIGDATA([FromBody]Datas ...
- 使用 HttpClient 进行表单提交时,遇到的问题
问题 在开发微信支付的小微商户进件接口时,需要通过表单来上传身份证图片等数据.在微信支付接口文档也说明了,需要使用 multipart/form-data 的方式发送请求..NET 提供了 Multi ...
- basedir的介绍
os内置dirname方法就是文件目录的往上找一级 #得到当前文件名或者路径 if __name__ == "__main__": print(__file__) #这是os的一个 ...
- 洛谷$P2046\ [NOI2010]$海拔 网络流+对偶图
正解:网络流+对偶图 解题报告: 传送门$QwQ$ $umm$之前省选前集训的时候叶佬考过?然而这和我依然不会做有什么关系呢$kk$ 昂这题首先要两个结论?第一个是说每个位置的海拔一定是0/1,还一个 ...
- javascript-void keyword
javascript-void keyword 写在前面 ECMA-262定义了ECMAScript所支持的关键字(keyword),关键字不能用作ECMAScript程序的标识符(Indetifie ...
- Spring中常见的设计模式——策略模式
策略模式(Strategy Pattern) 一.策略模式的应用场景 策略模式的应用场景如下: 系统中有很多类,而他们的区别仅仅在于行为不同. 一个系统需要动态的在集中算法中选择一种 二.用策略模式实 ...