git常用操作命令归纳
git开始
全局配置:配置用户名和e-mail地址
$ git config --global user.name
"Your Name"
$ git config --global user.email
"email@example.com"
git init:初始化git仓库,目录下生成一个.git文件
git init
git add 文件名:将文件修改添加到仓库
git add readme.txt //修改单个文件
git add . // 将所有修改的文件添加到暂存区
git commit -m '说明':将文件提交到仓库
$ git commit -m
"wrote a readme file"
git status:查看当前仓库的状态,掌握工作区的状态
git diff readme.txt: 查看文件修改的内容
版本回退
git log:查看历史记录
git log --pretty=oneline:只查看commit.id(版本号) 和 说明
git reset --hard HEAD^: 回退到上一个版本 HEAD表示当前版本,上一个是HEAD^,往上一百个是HEAD~100
git reset --hard commit.id: 回到指定版本号对应的版本
git reset --hard 1049a
git reflog:用来记录你的每一个命令,以便确定回到哪个版本
几个概念
工作区(Working Directory):在电脑里的进行git操作的目录
版本库(Repository):工作区里的.git文件,就是版本库,git版本库里最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。
把文件往Git版本库里添加的时候,是分两步执行的:
第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。
撤销修改
撤销分为三种情况:
第一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;(no add) ---> git checkout -- file
第二种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。(no commit)---> git reset head file
第三种是readme.txt已经commit了,就使用版本回退即可 ---> git reset --hard head^
1、git checkout -- readme.txt:将制定文件在工作区的修改全部撤销
注意:命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令
2、git reset:既可以回退版本,也可以把暂存区的修改回退到工作区
在第二种情况下,我们就可以使用git reset命令撤回工作区
git reset head readme.txt
// head表示当前版本
撤回工作区后再使用git checkout命令从工作区撤回
删除文件
git rm file:从版本库中删除文件
误删的情况下可以使用版本库的版本’一键还原‘
git checkout -- test.txt
远程仓库
git remote add origin github仓库地址:将本地仓库与远程仓库关联
git push -u origin master: 由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
git push origin master: 将本地master分支的修改推送到远程仓库
git clone github仓库地址:将远程仓库克隆到本地
分支管理
git branch dev:创建dev分支
git checkout dev :切换dev分支
git checkout -b dev:创建dev分支,并切换到dev分支。 -b参数表示创建并切换到dev分支
git branch: 查看所有分支, *表示当前分支
git merge dev: 合并指定分支到当前分支 。 结果中Fast-forward信息表示‘快进模式’ -->直接把master指向dev的当前提交,合并速度非常快
git merge --no-ff -m '描述内容' dev :--no-ff参数表示禁用Fast-forward,使用普通模式
git branch -d dev: 删除dev分支
git branch -D dev: 如果分支还没合并,使用-d无法删除,使用-D强制删除
git log --graph: 可以查看分支合并图。
git log --graph --pretty=oneline --abbrev-commit :--pertty=oneline 查看简短信息 --abbrev-commit: 查看commit缩写
场景:修复bug时创建分支
git stash: 将当前工作现场存储起来
git stash list :查看存储的工作现场列表
git stash pop:恢复工作现场并删除stash的内容
git remote: 查看远程仓库的信息
git remote -v: 查看origin的地址
git checkout -b dev origin/dev:在本地创建和远程分支对应的分支
git pull:抓取最新的远程提交
git branch --set-upstream-to=origin/dev dev: 建立本地分支和远程分支的关联
git rebse: 把本地未push的分叉提交历史整理成直线
标签管理
git tag <tagname>: 用于创建一个新标签,默认指向head,也可以指向commi.id
git tag: 用于查看所有标签
git tag -a <tagname> -m '标签信息' :为标签指定信息
git tag -d <tagname>: 删除本地标签
git push origin <tagname> :推送本地标签到远程
git push origin --tags: 推送全部未推送的本地标签到远程
git push origin :refs/tags/<tagname>:删除一个远程标签
自定义git
git config --global alias.'自定义简写指令' '被简写的指令'
git config --global
alias
.st statusgit config --global
alias
.co checkout
命令行命令
cat readme.txt: 查看文件内容
rm file 删除文件
vi file: linux里的vi编辑器
(1)通过i键进入插入模式,可以修改文件
(2)通过Esc键进入命令模式 输入':wq!' -->保存+退出vi 输入':q!' -->不保存退出
链接:https://mp.weixin.qq.com/s/O4dJpG03lRgtki4xNHzYYw
git常用操作命令归纳的更多相关文章
- git中常用的操作命令有哪些?常用操作命令归纳
git中常用的操作命令有哪些?本篇文章就给到大家归纳了一些git中常用操作命令.有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. git开始 全局配置:配置用户名和e-mail地址 1 ...
- Git常用操作命令与图解
Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone g ...
- 2018.4.23 git常用操作命令收集(转)
Git常用操作命令收集: 1. 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v ...
- Git常用操作命令收集
Git常用操作命令收集 1.进入本地仓库访问位置之后执行命令 1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远 ...
- git常用操作命令
使用git进行版本控制,分为两部分: 一: 服务端 1.1 首先要申请一个git的账号,方便团队协作.推荐开源中国(www.oschina.net),相对于github来说,有两个优点:1.访问速度很 ...
- 记录git常用操作命令
GIT的常用操作 0.写在前面 作为一名开发者,熟悉使用 git 代码管理工具是一项必备的基本技能.git 相较 SVN 而言,其优点不言而喻.git 的功能非常强大,其包括的操作命令也非常的多,但是 ...
- git 常用操作命令
A. 新建Git仓库,创建新文件夹git init B. 添加文件到git索引git add <filename> --- 单个文件添加git add * --- 全部文件添加 C. 提 ...
- git常用操作命令使用说明
设置用户名和邮箱 git config --global user.email 'xxx' git config --global user.name 'xxx' 创建分支 git branch xx ...
- git 常用操作命令行
mkdir files : 创建一个名字为files的文件夹 cd files : 切换目录到files pwd ; 显示当前所在目录 ls -ah : 查看本地隐藏不可见的文件夹 git init ...
随机推荐
- kvm的img文件的本机挂载
非lvm分区挂载方法: mount -o loop xxx.img /mnt/xxx 系统提示: “mount: you must specify the filesystem type” 执行:fd ...
- day13 python生成器函数 推导式 生成器
day13 python 一.生成器 生成器的本质就是迭代器 生成器的特点和迭代器一样. 取值方式和迭代器一样(__next__()) 由生成器函数或生成器表达式来创建 ...
- ReactNative 遇到的问题汇总
1.react-native 启动项目出现如下报错 解决方法: nvm install v9.0.0 nvm alias default v9.0.0
- 【leetcode】908. Smallest Range I
题目如下: 解题思路:简单的不能再简单的题目了,对于任意一个A[i]来说,其可能的最小的最大值是A[i]-K,最大的最小值是A[i]+K.遍历数组,求出所有元素中最大的最小值和最小的最大值,两者之差( ...
- bzoj 2015
http://www.lydsy.com/JudgeOnline/problem.php?id=2015 裸最短路(' ' ) 不过我最初以为是mst (' ' ) #include & ...
- 切换路由时取消全部或者部分axios请求,并将一些从不需要取消的加入白名单
1. axios拦截器进行配置,除了白名单中的接口,统统保存到全局变量canCancelAxios中 window.canCancelAxios = []; // http request 拦截器 a ...
- 【Flutter学习】之绘画实例(二)
一,画路径 - drawPath(Path path, Paint paint) Path 主要有方法如下: 直接描述路径的方法还可以细分为两组:添加子图形和画线(直线或曲线) addXXX() - ...
- jquery实现简单的搜索功能
管理系统中需要实现导航列表的搜索功能,写了一个简单的小栗子: <!DOCTYPE html> <html lang="en"> <head> & ...
- Angular项目中引入jQuery
npm install --save jquery npm install @types/jquery --save 在对应的组件中引入 import * as $ from "jquery ...
- 【C#、阿里云、Tomcat、XP系统】c#下使用.NET4.0中HttpWebRequest访问Tomcat中HTTPS项目时,在XP系统中超时
情景: 1.使用Java开发的Web项目,部署在服务器Tomcat中 2.项目使用HTTPS,使用阿里云的PFX证书 阿里云推荐Tomcat配置如下 <Connector port=" ...