git 指令笔记
狂躁,太狂躁!!赶上过年,赶上自己的懒癌,12月底就学完的教程直到今天才整理笔记,中途沉默在游戏中.....
只给出Windows下git指令操作,推荐大家去廖雪峰前辈那里学习(百度搜索:廖雪峰的官方网站)
指令附件已上传到GitHub网站,大家学完教程可以练习克隆,地址:git@github.com:mrzhijian/git-bash-command
1.Windows下安装git
2.配置git的识别信息
$ git config --golbal user.name 'MrZhiJian'
$ git config --global user.email 'xxx@163.com'
3.创建文件夹
$ git mkdir 文件夹名
4.初始化git仓库
$ git init
5列出当前目录下的所有文件及文件夹
$ ls //列出当前目录下的所有文件及文件夹
$ ls -ah //列出当前目录下的所有文件及文件夹,包含隐藏文件
6.工作区文件增加到暂存区
$ git add 文件名
7.暂存’修改‘提交到版本库
$ git commit -m '提交备注'
8.查询文件状态
$ git status
9.查看文件
$ git diff 文件名 //查看文件内容差异
$ cat 文件名 //查看文件内容
10.查看提交记录
$ git log //显示最近三次提交
$ git log --ptetty=oneline //每条提交记录以一行信息显示
11.回到当前版本的前某个版本
$ git reset --hard head^ //回到当前版本的上一个版本
$ git reset --hard head^^ //回到当前版本的上两个版本 ,前n个版本以此类推
$ git reset --hard head~50 //回到当前版本的前50个版本
$ git reset --hard 版本号 //回到版本号指定版本 版本号只给出前7位以上长度即可
12.查看命令历史
$ git reflog
13.撤销修改
$ git checkout -- 文件名 //将工作区已修改文件撤回到未修改状态
$ git reset head 文件名 //将暂存区已修改但未提交的文件撤回到工作区,在重复上一步骤,即可回到未修改状态
//已提交文件则通过版本回退撤到某一节点
14.删除文件
$ git rm 文件名 //删除的文件也可进行撤销操作
15.创建ssh Key
$ ssh-keygen -t rsa -C xxx@163.com
//将id_rsa.pub文件内容添加GitHub网站SSH Keys页面后即可推送内容到远程
16.添加远程库
$ git remote add origin git@github.com:mrzhijian/git-bash-command.git
//origin 表示为远程库命名
//mrzhijain 表示个人GitHub帐户名
//git-bash-command表示远程仓库名
17.本地库内容推送到远程库
$ git push -u origin master
//首次推送用-u表示 将本地内容推送到远程并与远程master分支关联起来,后续推送可简化去掉-u
18.从远程仓库克隆
$ git clone git@github.com:mrzhijian/git-bash-command //采用ssh协议克隆
$ git clone https://github.com/mrzhijian/git-bash-command //采用HTTPS协议克隆
19.创建分支与合并分支
$ git checkout -b dev //步骤一:创建分支dev并切换到dev分支
$ git branch dev //步骤二:创建分支dev
$ git checkout dev //步骤三:切换到分支dev
//步骤一 = 步骤二 + 步骤三
$ git merge dev //将dev分支合并到当前所在分支
$ git branch -d dev //删除dev 分支
$ git branch //查看分支列表
20.分支合并策略
$ git merge dev //采用fast forward策略快速合并,直接移动指针,不会留存合并记录
$ git merge --no-ff -m '合并备注' dev //禁用fast forward快速合并策略,会留存合并记录
21.bug分支---隐藏当前工作现场
$ git stash //隐藏工作区更改,当用git status指令查看时显示为发生更改
$ git stash list //显示隐藏的工作区列表
$ git stash pop //回到工作现场并删除stash内容
$ git stash apply //返回工作现场但不删除stash内容
$ git stash drop //删除stash内容
22.丢弃未合并的分支
$ git branch -D dev //当用普通分支删除指令不能删除未合并的分支时应用此命令
23.查看远程仓库信息
$ git remote
$ git remote -v //二指令都可以显示远程仓库信息 后者更详细,会显示哪些仓库是可拉取 哪些仓库可推送
24.创建与远程分支对应的本地分支
$ git checkout -b dev origin/dev
25.建立本地分支与远程分支的链接
$ git branch --set-upstream dev origin/dev
26.创建标签
$ git tag v1.0 //在当前分支的最新提交上创建标签
$ git tag v1.1 <历史提交id> //在指定历史提交上创建标签
$ git tag //查看标签列表
$ git tag -a v1.2 -m '标签说明' <提交id> //创建带有说明的标签
$ git show v1.0 //查看指定标签的详细信息
27.操作标签
$ git tag -d v1.0 //删除标签
$ git push origin v1.0 //推送标签到远程
$ git push origin --tags //一次推送本地尚未推送的全部标签到远程
//删除远程标签 先删除本地在删除远程
$ git tag -d v1.0 //删除本地
$ git push origin :refs/tags/v1.0 //删除远程
28.忽略特殊文件
//忽略特殊文件时需要编写.gitignore文件 参考https://github.com/github/gitignore
//.gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理!
$ git add -f xxx.class //强制提交.gitignore已忽略的文件
$ git check-ignore -v xxx.class //检查.gitignore文件哪里忽略了xxx.class 文件
git 指令笔记的更多相关文章
- 使用git指令下载github仓库代码(笔记)
通过Git指令下载源码 Git概念说明 三种状态:修改状态.暂存状态和Git仓库 基本的Git工作流程: 在工作目录中修改文件 暂存文件,将文件的快照放入暂存区域 提交更新,找到暂 ...
- Git学习笔记与IntelliJ IDEA整合
Git学习笔记与IntelliJ IDEA整合 一.Git学习笔记(基于Github) 1.安装和配置Git 下载地址:http://git-scm.com/downloads Git简要使用说明:h ...
- Git学习笔记(10)——搭建Git服务器
本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...
- Git学习笔记(四)
一.忽略特殊文件 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们 ...
- git 学习笔记6--remote & log
git 学习笔记6--remote & log 创建SSH Keys ssh-keygen -t rsa -C "1050244110@qq.com" 本地关联远程 git ...
- 第一章 git指令与设置
相关指令: 1.从远程的master分支上创建新的分支,此时新分支内容与master分支内容相同: git checkout master; git branch newbranch; git che ...
- 读<你必须知道的.NET>IL指令笔记
IL指令笔记: 1.newObj和initObj MSDN解释:newObj用于分配和初始化对象,而initObj用户初始化值类型 newObj解释: (1):从托管堆分配指定类型所需要的全部内存空间 ...
- 《Pro Git》笔记3:分支基本操作
<Pro Git>笔记3:Git分支基本操作 分支使多线开发和合并非常容易.Git的分支就是一个指向提交对象的可变指针,极其轻量.Git的默认分支为master. 1.Git数据存储结构和 ...
- git使用笔记(三)(图文说明) 图解提交更改内容的不同方式,涉及代码
此步之前的工作和示例请参考以下帖子: git使用笔记(一)Git的下载与配置 git使用笔记(二) 如何把GitHub上项目同步到本地 -------------------------------- ...
随机推荐
- Java入门 - 高级教程 - 05.网络编程
原文地址:http://www.work100.net/training/java-networking.html 更多教程:光束云 - 免费课程 网络编程 序号 文内章节 视频 1 概述 2 Soc ...
- 在winform中使用cefsharp.winform嵌入浏览器(含视频教程)
免费视频教程和源码: https://www.bilibili.com/video/av84573813/ 1. 开始使用CefSharp在Winform中嵌入网页 2. 解决重复打开Cefsharp ...
- Redis(五):hash/hset/hget 命令源码解析
Redis作为nosql数据库,kv string型数据的支持是最基础的,但是如果仅有kv的操作,也不至于有redis的成功.(memcache就是个例子) Redis除了string, 还有hash ...
- python返回值内取出某一段数据的方法
面讲的方法只适用于返回值长度固定的内容,长度不固定,每次取得值就不会一样 比如,我们需要取出“提取码: y3rx ”“:”后面的“y3rx” 目标数据在内容的第5位到第9位,做左侧为第1位,冒号后面有 ...
- [校内训练20_01_22]ABC
1.给出序列A,求序列B,使得bi|ai,lcm(b1,b2,...,bn)=lcm(a1,a2,...,an)且字典序最小. 可以发现,对于某个质数p,它有一个最大的次数k,将pk放在尽可能靠后且能 ...
- CSS-16-margin值重叠问题
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- nmap详解之基础示例
扫描主机target.example.com的所有TCP端口 nmap -v target.example.com 发起对target.example.com所在网络上的所有255个IP地址的秘密SY ...
- springBoot 整合 dubbo 遇到的坑
一.注意springBoot 和 dubbo 之间版本的问题 <?xml version="1.0" encoding="UTF-8"?> < ...
- CAD制图系列一之绘图、标注、修改、视图
笔记内容: 缩放.平移.键盘操作 绘图:直线.矩形 修改:删除.修剪.延时 标注:线型.对齐.半径.折弯.直径.角度 知识点 鼠标中键上下滚动 平移:先全部选中,然后点击中间的空格,随便移动 重点:空 ...
- ROS中的3D机器人建模(二)
一,创建我们的第一个URDF模型 我们设计的第一个机器人模型是pan-and-tilt机械结构,代码如下 pan_tilt.urdf: 1 <?xml version="1.0&quo ...