GIT初学者详细指令学习
参考网站:https://www.liaoxuefeng.com/wiki/896043488029600
基础概念
1.自定义名字和邮箱号
git config --global user.name “your name”
git config --global user.email “your email”
2.创建默认仓库
mkdir filename 创建文件
cd filename 进入文件夹
Pwd 当前文件路径
git init 将当前目录作为初始化的仓库
3.文件基础操作
git add filename.exname 文件添加,可多次添加,一并提交
git commit -m “description” 提交文件并填写描述
git status 查看文件当前状态(例如:被修改的文件)
git diff HEAD -- filename.exname 查看某个文件详细被修改的地方
git log 查看操作日志
git log --pretty=oneline 查看简介的操作日志
ls 查看文件列表
4.版本回退
git reset --hard HEAD^ 回退到上一个版本 “^”的个数代表要回退的版本数,前两个版本用^^代表,以此类推
git reset --hard conmmitid 回退到任意指定commitid版本
git reflog 查看所有的文件操作指令,前面的随机码即commitid
5.撤销修改
git checkout -- filename.exname 已修改(删除)文件但未add时,使用该命令会撤销修改(删除)的地方(文件)
git reset HEAD filename.exname 已经add但未commit时,使用该命令会把暂存区回退到工作区,相当于只是本地修改(删除),未add
6.删除文件
rm filename.exname 仅在工作区删除
git rm filename.exname 不仅再工作区删除,同时还删除暂存区(完事之后记得 git commit),若要恢复,则需要用到前面的撤销修改指令
7.连接github
出现红框内英文即代表链接成功
8.添加到远程库
在github创建一个空的git仓库之后
在本地仓库输入 git remote add origin git@github.com:(github仓库地址).git
若报remote origin already exists的错误 说明本地已经关联了一个远程库,需要先删除再关联
git remote -v 查看远程库信息
git remote rm origin 删除远程库
再重新关联
若要关联多个远程库比如(github和码云)
git remote add github git@github.com:(github仓库地址).git 先关联github
git remote add gitee git@github.com:(github仓库地址).git 再关联码云
注意后面的origin需要改为对应的红标内容(代表着远程库名字)
接着 git push -u origin master 把本地库master所有内容推送到远程库上, 第一次提交需要加上参数(-u),后面可简化
出现此内容属于正常,再输入一次上面的push指令即可
出现以下内容时,说明已经推送到github仓库了,以后只需要push一次就够了 **如果从别的文件库上传到一个github仓库**
需要先pull下来 git pull origin master 会自动合并
如果是两个不相关的项目需要加上参数 改为 git pull origin master --allow-unrelated-histories
之后会自动打开vim编辑器 先按 i 切换到插入模式,写完后 Esc→:→wq 回车即可保存退出编辑器
然后再重新 git push -u origin master 即可推送到github
9.从远程库克隆
在github新建一个仓库的时候勾选
然后再本地找到一个合适的地方
git clone git@github.com:(github仓库位置).git 将项目克隆到本地仓库
10创建与合并分支
git branch 查看分支
git branch name 创建分支
git checkout name 或者 git switch name 切换分支
git checkout -b name 或者 git switch -c name 创建并且切换到该分支
git merge name 合并某分支到当前分支
git branch -d name 删除分支
git log --graph --prety=oneline --abbrev-commit 查看所有分支合并信息
11.隐藏当前工作区,提交之前工作修改
例如需要修改分支名字为issue-101的bug
11.1 git stash 隐藏工作区
11.2 git checkout master 切换回需要修改的分支
11.3 git checkout -b issue-101 在改分支下创建临时分支
11.4 修改bug后提交文件 提交时的commitid后面会用到
11.5 git checkout master 切换回master分支
11.6 git merge --no-ff -m ”描述内容” issue-101 完成合并并且删除该分支
11.7 git checkout dev 完成修改切换回之前的分支继续开发
11.8 git stash list 查看之前隐藏的分支
11.9 git stash pop 恢复到之前的工作区并且删除stash的该条信息
11.10 因为dev是从master分支分过来的,所以在dev上同样存在该bug的问题
11.11 git cherry-pick commitid 复制一个特定的提交到当前分支,同时也提交了
12.强制删除某个分支
git branch -D branchName 强制删除某个分支
13.多人协作问题
git remote 或者 git remote -v 查看所有分支信息
git push origin master(改成你要推送的分支) 提交到远程库
13.1 git pull 合并
13.2 如果git pull 提示no tracking information 则说明本地和远程的分支链接关系没有建立
13.3 git branch --set-upstream-to= (分支名字) origin/(分支名字)
13.4 git pull 再更新一遍
13.5 pull成功,但可能会出现冲突,手动解决一下再commit提交,然后再push一遍即可
14标签管理(首先要切换到要创建标签的分支上)标签和commit是挂钩的,如果提交到其他分支则其他分支也是有该标签
git tag v1.0 创建1.0的标签
git tag 查看所有标签
git log --graph --pretty=oneline --abbrev-commit 查看所有commitid
git tag v1.0 commitid 给指定commitid打标签
git show v标签 查看对应标签的详细提交信息
git tag -d v标签 删除某个标签
git push origin v标签 推送某个标签到远程库
git push origin --tags 一次性推送本地所有未推送的标签到远程库
git push origin :refs/tags v标签 删除远程库的标签(要先删除本地的标签)
GIT初学者详细指令学习的更多相关文章
- git/github常用指令、入门
git的基本常用指令: 1.cd:切换路径 2.mkdir:进入文件夹目录 3.pwd:显示当前目录的路径 4.git init:把当前的目录变成可以管理的git仓库,生成隐藏.git文件 5.git ...
- 10篇写给Git初学者的最佳教程(转)
身为网页设计师或者网页开发者的你,可能已经听说过Git这个正快速成长的版本控制系统.它由GitHub维护:GitHub是一个开放性的.存储众人代码的网站.如果你想学习如何使用Git,请参考本文.在文章 ...
- 码云配合git入门命令总结学习
目录 码云配合git入门命令总结学习 基本设置 基本命令总结学习 准备工作以及基本思路 基本命令 码云搭建仓库步骤 准备前工作 具体操作方法 远程仓库基本命令 标签相关命令 所有命令总结 基本命令总结 ...
- Git使用详细教程(一)
很久不发博客,最近有兴趣想写点东西,但 Live Writer 不支持从Word复制图片,疯狂吐槽下 Git使用详细教程(一) Git使用详细教程(二) 该教程主要是Git与IntelliJ IDEA ...
- ARM指令学习,王明学learn
ARM指令学习 一.算数和逻辑指令 1— MOV 数据传送指令 2.— MVN 数据取反传送指令 3.— CMP 比较指令 4.— CMN 反值比较指令 5.— TST 位测试 ...
- Git 一些关于 Git、Github 的学习资源
一些关于 Git.Github 的学习资源 昨天浏览 Github 的是时候发现了 Githug 这个游戏,这个游戏用来帮助菜鸟们学习使用 Git 的. Githug is designed to g ...
- Tomcat详细用法学习(三)
本篇接上一篇<Tomcat详细用法学习(二)>,主要讲解服务器所要求的web应用的组织结构. 上一篇说到了如何使用服务器将自己的web应用映射成虚拟目录,以便于在浏览器中可以对自己开发的w ...
- Tomcat详细用法学习(五)
本篇接上一篇<Tomcat详细用法学习(四)>,主要讲解Tomcat服务器的管理平台 我们可能会将很多web应用交给Tomcat,那么Tomcat服务器就要对我们这些载入的web应用进行管 ...
- Tomcat详细用法学习(四)
本篇接上一篇<Tomcat详细用法学习(三)>,主要讲解配置虚拟主机.打包web应用成war包和Tomcat的体系结构 对于Tomcat服务器,可以放置多个网站(多个web应用),这就是讲 ...
- Tomcat详细用法学习(二)
本篇接上一篇<Tomcat详细用法学习(一)>,主要讲解服务器的虚拟目录映射的几种方式. 先来看几个概念: web应用的概念:一个web应用包含了许多我们做好的web资源,里面或许包括了多 ...
随机推荐
- 【Spark】Day04-Spark Streaming:与离线批量比较、架构特点、入门案例、创建(队列、数据源)、转换(有状态、无状态)、输出方式、进阶(累加、转换为DF、缓存持久化)、实战(窗口统计)
一.概述 1.离线和实时计算 离线:数据量大,数据不会变化,MapReduce 实时:数据量小,计算过程要短 2.批量和流式处理 批量:冷数据,数据量大,速度慢 流:在线.实时产生的数据(快速持续到达 ...
- webpack :There are multiple modules with names that only differ in casing
1, webpack版本3.6.0 2. 报warning文件为 node_modules 下面webpack 里的hot.js和dev-server.js 3. 没有出现模块名混用大小写 解决方法: ...
- Java 中的接口还可以这样用,你知道吗?
Java 程序员都知道要面向接口编程,那 Java 中的接口除了定义接口方法之外还能怎么用你知道吗?今天阿粉就来带大家看一下 Java 中的接口还可以有哪些用法. 基本特性 我们先看一下接口的基本特性 ...
- 关于Window中右键新建菜单的设置
在日常工作中,有时候需要根据自己的需要对Windows桌面右键新建菜单进行自定义,自定义的方法如下: 1.在Window中输入Win+R调出运行命令框 2.输入regedit,打开注册表 3.如果想要 ...
- SpringCloud微服务框架复习笔记
SpringCloud微服务框架复习笔记 什么是微服务架构? 微服务是一种软件开发技术,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调.互相配合,为用户提供最终价值.每个服务运行在其独立的进 ...
- Maven多模块管理
项目的目录结构: 一.创建父工程的必须遵循以下两点: 1.packaging标签的文本内容必须设置为pom 1 <?xml version="1.0" encoding=&q ...
- 物联网 IOT 设备如何脱离信息孤岛?
以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「englyf」https://mp.weixin.qq.com/s/tb5eOFNUZLtPPLipLAh3vA 本文大概 1435 个 ...
- [编程基础] Python lambda函数总结
Python lambda函数教程展示了如何在Python中创建匿名函数.Python中的匿名函数是使用lambda关键字创建的. 文章目录 1 介绍 1.1 简单使用 1.2 Python lamb ...
- day04-Vue01
Vue01 1.Vue是什么? Vue(读音/vju:/,类似于view)是一个前端框架,依据构建用户界面 Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或者项目整合 支持和其他类库结合使 ...
- 数据分析中的SQL如何解决业务问题
本文来自知乎问答. 提问:数据分析人员需要掌握sql到什么程度? 请问做一名数据分析人员,在sql方面需要掌握到什么程度呢?会增删改查就可以了吗?还是说关于开发的内容也要会?不同阶段会有不同的要求吗? ...